/* 		indice 
	STEP_RIEPILOGO
	POPUP_SWEET_ALERT2
*/

html, body{
	font-size: 100% !important;
}

main.modal-registrazione.cg-signup-responsive{
	background-color: #FFFFFF !important;
}

.cg-signup-responsive .registrazione-top{
	padding: 0px !important;
}

.cg-registrazione-top-flex{
	display: flex;
	padding-left: 1rem;
	padding-right: 1rem;
	height: 72px;
	justify-content: space-between;
	box-shadow: 2px 2px 8px 0px #00000014;
}

@media (min-width: 1024px){
	.cg-registrazione-top-flex{
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}
}

.cg-registrazione-top-element{
	height: 100%;
    display: flex;
}

.cg-registrazione-top-element.logo{
	padding-top: .5rem;
    padding-bottom: .5rem;
}

.cg-registrazione-top-flex a{
	pointer-events: none;
	height: 100%;
    display: flex;
    align-items: center;
    justify-content: left;
}

#cg-signup-main-title{
	margin: auto;
	font-weight: 700;
	font-size: 16px;
	text-transform: uppercase;
	color: #15366F;
	flex-grow: 1;
	text-align: center;
}

.cg-registrazione-top-element-close{
	height: 24px;
	width: 24px;
	background-image: url(../../../images/signup/chiudi.svg);
	margin: auto;
	margin-right: 0;
	cursor: pointer;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.cg-registrazione-top-element-back-step{
	height: 24px;
	width: 24px;
	background-image: url(../../../images/signup/chiudi.svg);
	margin: auto;
	margin-right: 0;
	cursor: pointer;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.container-fluid.registrazione-main{
	max-width: 1440px;
	padding-left: 16px !important;
	padding-right: 16px !important;
	padding-top: 16px !important;
	padding-bottom: 16px !important;
	border: unset;
	margin: 0 auto;
	display: block;
    justify-content: unset !important;
}

.bs-stepper-header{
	width: 100%;
	margin: 0;
}

.cg-signup-stepper-container{
	display: flex;
	padding-right: 29px;
	padding-left: 29px;
	padding-top: 27px;
	padding-bottom: 27px;
	width: 100%;
	gap: 5px;
}

@media (min-width: 1024px){
	.cg-signup-stepper-container{
		padding-left: 50px;
		padding-right: 50px;
        padding-top: 1.25rem;
        padding-bottom: 1.25rem;
	gap: 2.25rem;
	}
}

.step{
	display: flex;
}

.bs-stepper-header .step-trigger{
	color: white;
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
	margin: auto;
}

.bs-stepper-header .step-trigger:focus{
	color: white;
}

.bs-stepper .cg-custom-step-active .step-trigger.disabled, .bs-stepper .cg-custom-step-active .step-trigger:disabled{
	opacity: unset;
	pointer-events: auto;
	cursor: pointer;
}

.step.cg-custom-step-active .bs-stepper-circle{
	background-image: url(../../../images/signup/check.svg);
	background-size: 75%;
	background-position: center;
	background-repeat: no-repeat;
	background-color: white;
}

.step.cg-custom-step-active .cg-step-numbertext{
	display: none;
}

.step.cg-custom-step-active + .line{
	background-color: white !important;
}

.bs-stepper-circle{
	border: solid 2px white;
	background: transparent;
	height: 26px;
	width: 26px;
	border-radius: 100%;
	margin: 0;
	order: -1;
	flex-shrink: 0;
}

.active .bs-stepper-circle{
	background-color: transparent !important;
}

.cg-step-numbertext{
	margin: auto;
	line-height: 0;
	font-size: .75rem;
}

.step[data-target="#step-final-responsive"]{
	display: none;

}
.cg-step-text{
	margin-left: .625rem;
	text-align: left;
	font-size: .875rem;
	line-height: 1.25rem;
	font-weight: 700;
	display:none;
	text-wrap: auto;
}

@media (min-width: 1024px){
	.cg-step-text{
	display:block;
}
}

.line{
	background-color: rgb(138 155 183 / 1) !important;
	height: .125rem;
	flex: 1 1 100% !important;
}

.bs-stepper-content{
	padding: 0px;
}

.bs-stepper-content .content{
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 1.25rem;
    padding-top: 1rem;
    margin-bottom: 65px;
}


@media (min-width: 1024px){
	.bs-stepper-content .content{
		padding-top: 1.25rem;
		padding-bottom: 2.5rem;
		padding-left: 2.75rem;
	    padding-right: 2.75rem;
	}
}

.cg-registrazione-step-title{
	margin: 0 !important;	
}

.cg-registrazione-step-title div{
	margin-left: 0px;
	color: #15366F !important;
	font-weight: 500;
    font-size: 1.5rem;
}

.cg-registrazione-step-box{
	background-color: white;
	border-radius: 1rem;
	margin: 20px 0;
	box-shadow: 2px 2px 8px 0px #00000014;
}

.cg-registrazione-step-informativa > div, .cg-registrazione-step-balduzzi > div{
	    padding-left: 1.25rem;
	    padding-right: 1.25rem;
	    padding-top: 1rem;
	    padding-bottom: 1rem;
	    /* box-shadow: 2px 2px 8px 0px #00000014; */
}

.cg-registrazione-step-informativa a{
	    text-decoration-line: underline;
	    text-underline-offset: 1px;
	    font-weight: 700;
	color: #15366f;
}

.cg-registrazione-step-mainform-inner{
	padding-top:  .75rem;
	padding-bottom: .75rem;
}

@media (min-width: 1024px){
.cg-registrazione-step-mainform-inner{
	padding-top: 25px;
	padding-bottom: 25px;
}
}

.cg-registrazione-step-mainform-inner hr{
	margin-left: 35px;
	margin-right: 35px;
}

.cg-registrazione-step-mainform-item{
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    
	padding-left: 10px;
	padding-right: 10px;
	
    margin-left: 10px;
    margin-right: 10px;
}

@media (min-width: 1024px) {
   .cg-registrazione-step-mainform-item {
	    padding-left: 35px;
	    padding-right: 35px;
    }
}

.cg-registrazione-step-mainform-title{
	color: #15366f;
	font-weight: 700;
	margin-bottom: 1.25rem;
	display: flex;
    justify-content: space-between;
}

.cg-registrazione-step-mainform-title-icon{
	background-image: url(../../../images/signup/infopsw.svg);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center;
	height: 24px;
	width: 24px;
	cursor: pointer;
}

.cg-registrazione-step-mainform-subtitle{
	color: black;
	    font-weight: 400;
}

.cg-registrazione-step-mainform-group4, .cg-registrazione-step-mainform-group{
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

@media (min-width: 768px) {
	.cg-registrazione-step-mainform-group4{
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.25rem;
	}
}

@media (max-width: 1023px) {
	#cg-residenza-block, #cg-domicilio-block{
	    grid-template-columns: repeat(3, minmax(0, 1fr));
	    display: grid;
	}
	
	#cg-residenza-block .cg-fieldset,
	#cg-domicilio-block .cg-fieldset{
		grid-column: span 3 / span 3;
	}
	
	#cg-residenza-block .cg-fieldset:has( #cg-address-city),
	#cg-domicilio-block .cg-fieldset:has( #cg-domicilio-city){
		grid-column: span 2 / span 3;
	}
	
	#cg-residenza-block .cg-fieldset:has( #cg-address-cap),
	#cg-domicilio-block .cg-fieldset:has( #cg-domicilio-cap){
		grid-column: span 1 / span 3;
	}
}



.cg-registrazione-step-mainform-inner .form-group{
	margin-bottom: 0px;
}

.cg-registrazione-field{
    border-color: rgb(92 97 105/ 1);
    border-radius: 1rem;
    border: solid 1px black;
    flex-direction: column;
    display: flex;
    padding-left: 1rem;
    padding-right: 1rem;
    background-color: rgb(246 246 246 / 1);
    position: relative;
    justify-content: center;
}

@media (min-width: 1024px) {
	.cg-registrazione-field{
	    padding-left: 1.25rem;
	    padding-right: 1.25rem;
    }
}

.cg-registrazione-field:focus-within{
	border-width: 2px;
	border-color: #15366f !important;
}



.cg-registrazione-field:not(:has( > .cg-select-mode-list-container > ul > li)){
	height: 50px;
}

@media (min-width: 1024px) {
	.cg-registrazione-field:not(:has( > .cg-select-mode-list-container > ul > li)){
		height: 60px;
	}
}



.cg-registrazione-field-inner{
	display: flex;
    height: 50px;
    min-height: 50px;
	flex-direction: column;
	justify-content: center;
	position: relative;
}

@media (min-width: 1024px) {
	.cg-registrazione-field-inner{
        height: 60px;
	    min-height: 60px;
    }
}


.cg-registrazione-field:has(.cg-select-mode-list-container){
}

.cg-registrazione-field.cg-registrazione-field-with-error{
	border-color: red;
}

.cg-registrazione-field.cg-registrazione-field-with-ok{
	border-color: green;
}

.cg-registrazione-field input{
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    border: unset;
    box-shadow: unset;
    background-color: transparent !important;
    /*margin-top: .625rem;*/
    padding-top: 1.25rem;
    font-weight: 600;
}

.cg-registrazione-field input.cg-select-mode, .cg-registrazione-field input.cg-select-mode + label{
	cursor: pointer;
}

.cg-registrazione-field input.cg-select-mode:not(.cg-select-mode-with-input){
	caret-color: transparent;
}

.cg-registrazione-field input.cg-select-mode:not(.cg-select-mode-with-input):has(~ .cg-select-mode-list-container:not(.cg-hide)){
	margin-top: 1.25rem;
}

.cg-registrazione-field input:focus{
    outline: none;
}


.cg-error-container{
	padding: .375rem .75rem;
    border-radius: .25rem;
	background-color: transparent;
	color: red;
	display: flex;
	gap: .5rem;
	padding-left: 0px;
}

.cg-success-container{
	padding: .375rem .75rem;
    border-radius: .25rem;
	background-color: transparent;
	color: green;
	display: flex;
	gap: .5rem;
	padding-left: 0px;
}

.cg-error-container-icon{
	background-image: url('https://test.bgame.it/external_css/MP/avviso.svg?v=3');
	height: 24px;
	width: 24px;
	background-position: center;
	background-size: 100%;
	background-repeat: no-repeat;
	cursor: pointer;
}

.cg-error-container-text,
.cg-success-container-text{
	margin: auto 0;
}

.form-group .cg-registrazione-field label{
	font-size: 1rem;
	text-transform: uppercase;
	top: 10px;
	position: absolute;
	color: rgb(92 97 105) !important;
	transition: all 0.25s;
}

@media (min-width: 1024px) {
	.form-group .cg-registrazione-field label{
		top: 15px;
    }
}

.form-group .cg-registrazione-field input[data-empty="false"] + label,
.form-group .cg-registrazione-field input:not(.cg-select-mode-no-input):focus + label,
.form-group .cg-registrazione-field input:not(:placeholder-shown) + label,
.form-group .cg-registrazione-field input.cg-registrazione-text-date + label{
	top: 0px;
	transform: scaleX(0.75) scaleY(0.75) translateX(-15%);
}

.form-group.cg-mandatory label:after{
	content: '';
}

.cg-registrazione-step-buttonfooter{
	position: fixed;
	bottom: 0;
	z-index:1;
	width: 100%;
	left: 0;
	display: flex;
	justify-content: space-between;
	padding-top: 1.25rem !important;
	padding-bottom: 1.25rem !important;
	padding-left: 1rem;
	padding-right: 1rem;
	background-color: white;
    gap: .75rem;
}

@media (min-width: 1024px) {
    .cg-registrazione-step-buttonfooter {
        padding-left: 2.75rem;
        padding-right: 2.75rem;
    }
}

.cg-registrazione-step-buttonfooter-btn{
	height: 50px;
	width: 50%;
	    border-radius: 1rem;
	border: solid 2px #15366f;
	text-transform: uppercase;
	    text-align: center;
    font-size: .875rem;
    font-weight: 700;
	color: #15366f;
	background-color: white;
	display: flex;
	cursor: pointer;
	margin: auto 0;
}

.cg-registrazione-step-buttonfooter-btn.cg-signup-continue-step{
	border: solid 2px #15366f;
	color: white;
	background-color: #15366f;
}

.cg-registrazione-step-buttonfooter-btn:hover, 
.cg-registrazione-step-buttonfooter-btn:active{
	--tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.cg-registrazione-step-buttonfooter-btn:active{
	background-color: rgb(231 237 246 / 1);
}


.cg-registrazione-step-buttonfooter-btn.cg-signup-continue-step:hover, 
.cg-registrazione-step-buttonfooter-btn.cg-signup-continue-step:active{
	--tw-shadow: 1px 2px 6px 0 rgba(0, 0, 0, .25);
    --tw-shadow-colored: 1px 2px 6px 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.cg-registrazione-step-buttonfooter-btn.cg-signup-continue-step:active{
	background-color: #0a275d;
}



.cg-registrazione-step-buttonfooter-btn div{
	margin: auto;
}

@media (min-width: 1024px) {
	.cg-registrazione-step-buttonfooter-btn{
		width: 322px;
	}
}

.cg-registrazione-step-balduzzi{
	    font-size: 11px;
}

.cg-registrazione-step-balduzzi-adm{
	margin: auto 0;
}
.cg-registrazione-step-balduzzi a{
	color: #15366f;
		font-weight: 800;
	text-decoration: underline;
}

#cg-registrazione-calcolacg-link{
	display: flex;	
}

#cg-registrazione-calcolacg-link span{
	color: #15366f;
	text-decoration-line: underline;
	text-underline-offset: 1px;
	font-weight: 700;
	font-size: .75rem;
	line-height: 1rem;
	margin: auto 0;
}

.cg-registrazione-layer{
	position: fixed;
	top: 0;
	z-index: 1;
	width: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	height: 100%;
}

.cg-registrazione-layer::-webkit-scrollbar{
	width: 0;
}

.cg-registrazione-radio-container-list{
	display: flex;
	gap: 1.5rem;
	margin-top: 1rem;
    margin-bottom: 1rem;
}

.cg-registrazione-radio-container{
	display: flex;
	gap: .625rem;
}

.cg-registrazione-radio-container input[type=radio]{
	display: flex;
	
    height: 1.5rem;
    width: 1.5rem;	
	color:  #15366f;
	margin: auto 0;
	
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    
    background-color: #fff;
    border: solid 1px    rgb(92 97 105 / 0.4);;
    border-radius: 100%;
}

.cg-registrazione-radio-container input[type=radio]:checked{
	background-color:  #15366f;
    background-position: 50%;
    background-repeat: no-repeat;
  }

.cg-registrazione-radio-container label{
	margin: auto;
	display: flex;
}

.cg-select-mode-list-container{
	max-height: 160px;
	overflow-y: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none;
	cursor: pointer;
	position: relative;
}

.cg-select-mode-list-container ul{
	    list-style: none;
	    margin: 0;
	    margin-block: 0;
	    padding-inline: 0;
	    /*
	    padding-top: .5rem;
	    padding-bottom: .5rem;
	    */
}

.cg-select-mode-list-container li{
padding-top: .5rem;
    padding-bottom: .5rem;
}

.cg-noscroll{
	    overflow: hidden;
}

#cg-domicilio-full-container{
	background-color: rgb(246 246 246);
	margin-left: 10px;
	margin-right: 10px;
	border-radius: 1rem;
}

.cg-registrazione-checkbox-container{
	padding-top: 0;
	padding-bottom: 0;
	gap: .75rem;
	display: flex;
	margin-bottom: 15px;
}

@media (min-width: 1024px) {
	.cg-registrazione-checkbox-container{
		padding-top: 1.25rem;
		padding-bottom: 1.25rem;
	}
}

.cg-registrazione-checkbox-container input[type="checkbox"]{
    height: 1.5rem;
    width: 1.5rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    
    flex-shrink: 0;
	margin: auto 0;

    background-color: #fff;
 
    border-color: rgb(92 97 105 / 0.5);
    border-radius: .375rem;
    border-width: 1px;
	border-style: solid;
}

.cg-registrazione-checkbox-container input[type="checkbox"]:checked{
    border-color: transparent;
    background-color: #15366f;
    background-size: 50%;
    background-position: 50%;
    background-repeat: no-repeat;
}



.cg-registrazione-checkbox-container label{
	margin: auto 0;
}

.cg-registrazione-step-balduzzi-inner{
	display: flex;
	justify-content: space-between;
	gap: .5rem;
	flex-direction: column;
}

@media (min-width: 1024px) {
	.cg-registrazione-step-balduzzi-inner{
	flex-direction: row;

	}
}

.cg-registrazione-step-balduzzi-logo-list{
	font-size: 8px;
	display: flex;
	flex-direction: row;
	gap: .625rem;
}

.cg-registrazione-step-balduzzi-logo-list a{
	text-decoration: unset;
	display: flex;
	gap: .5rem;
	font-weight: normal;
}

.cg-registrazione-step-balduzzi-logo-list a > div{
	margin: auto;
	text-align: center;
}

.cg-registrazione-field:has(.cg-generic-pswtoshow),
.cg-registrazione-field:has(.cg-generic-pswtohide){
	position: relative;
}

.cg-generic-pswtohide,
.cg-generic-pswtoshow{
	position: absolute;
	height: 20px;
	width: 20px;
	right: 0px;
}

.cg-select-mode-icon{
	position: absolute;
	height: 20px;
	width: 20px;
	right: 0px;
	background-image: url(../../../images/signup/freccia-accordion-down.svg);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center;
	cursor: pointer;
}

.cg-registrazione-field:has( > .cg-select-mode-list-container:not(.cg-hide)) .cg-select-mode-icon{
	transform: rotate(180deg)
}


/*swal popup*/
.cg-signup-popup-swal-container-anchored{
	padding: 0;
}

.cg-signup-popup-swal-container-anchored .cg-signup-popup-swal-popup{
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.cg-signup-popup-swal-container-anchored button.swal2-close{
	width: 50%;
    margin: auto;
    margin-top: 10px;
    height: 6px;
    background-color: lightgray;
    color: transparent;
}


    

@media (min-width: 640px) {
    .cg-signup-popup-swal-popup {
        width: 588px;
    }
}

@media (min-width: 1024px) {
    .cg-signup-popup-swal-popup {
        width: 664px;
    }
}

.cg-signup-popup-swal-popup{
	    border-radius: 1rem;
	    padding: 0;
}

    
.cg-signup-popup-swal-content{
    padding: 15px 0;
}

@media (min-width: 1024px) {
	.cg-signup-popup-swal-content{
	    padding: 30px;
	}	
}

.cg-signup-popup-swal-content h1{
	color: black;
	font-weight: 500;
    font-size: 1.5rem;
    margin: 0.5rem auto;
}

.cg-signup-popup-swal-popup button{
	outline: unset !important;
	box-shadow: unset !important;
}

.cg-signup-popup-swal-buttoncontainer{
	display: flex;
	justify-content: space-between;
	margin: 20px 0;
    gap: 1.25rem;
}


.cg-signup-popup-swal-contatti-list{
	display: flex;
	flex-direction: column;
	gap: 1rem;
    margin: 1rem 0;
}

.cg-signup-popup-swal-contatti-item{
	display: flex;
	padding: 1.25rem;
	border-radius: 1rem;
	background-color: rgb(246 246 246);
	height: 110px;
	text-decoration: unset;
	color: black;
}

.cg-signup-popup-swal-contatti-item-text{
	margin: auto 0;
    text-align: start;
}

#cg-signup-popup-swal-type-otp{
	display: flex;
	flex-direction: column;
	gap: 5px;
}


/*Registered*/
.cg-stroke-ok{
	position: absolute;
	height: 24px;
	width: 24px;
    right: 0;
}

/*Registered layer*/

body:has( > #cg-registrazione-registered-layer:not(.cg-hide)){
	overflow: hidden;
}

#cg-registrazione-registered-layer{
	position: fixed;
    top: 0;
    width: 100%;
    z-index: 2;
    height: 100dvh;
    background: white;
}

#cg-registrazione-registered-outer{
    display: flex;
	justify-content: space-between;
	flex-direction: column;
    height: 100%;
}

#cg-registrazione-registered-top, 
#cg-registrazione-registered-bottom{
	margin: 20px auto;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    width: 100%;
}

#cg-registrazione-registered-bottom-buttonlist{
    gap: 2rem;
    display: flex;
    flex-direction: column;
}

#cg-registrazione-registered-bottom a{
	margin: auto;
	width: 100%;
}

#cg-registrazione-registered-bottom .cg-registrazione-step-buttonfooter-btn{
	margin: auto;
}


#cg-registrazione-registered-layer .logo a{
	margin: auto;
}

#cg-registrazione-registered-title{
	font-weight: 600;
	font-size: 20px;
}

/*extra*/
.cg-registrazione-contatti-toggler{
	    margin: 1rem;
	    font-size: .75rem;
}

.cg-registrazione-contatti-toggler span{
	color: #15366f;
	font-weight: bold;
	text-decoration: underline;
	cursor: pointer;
}

.cg-registrazione-mandatory-info{
	font-style: italic;
	display: flex;
    justify-content: flex-end;
    font-size: .75rem;
}

@media (min-width: 1024px) {
    .cg-registrazione-mandatory-info {
        font-size: .875rem;
    }
}

#cg-signup-calcolacf-modal{
	padding-left: 1rem;
    padding-right: 1rem;
	padding-bottom: 1.25rem;
    padding-top: 1rem;
    margin-bottom: 65px;
}

#cg-registrazione-password-live-block{
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	font-size: 10px;
}

@media (min-width: 1024px) {
    #cg-registrazione-password-live-block {
        font-size: 12px;
    }
}

.cg-registrazione-password-live-block{
	display: flex;
	flex-direction: column;
	gap: .125rem;
}

.cg-password-live-rule{
	display: flex;
	gap: .5rem;
}

.cg-password-live-rule-icon{
	height: 10px;
	width: 10px;
	background-image: url(../../../images/signup/generic-red-close.png);
	background-size: 100%;
	background-position: center;
	background-repeat: no-repeat;
    margin: auto 0;
}


.cg-password-live-rule.cg-password-live-rule-ok .cg-password-live-rule-icon{
	background-image: url(../../../images/conto/check-mark-green.svg);
}

.cg-password-live-rule-text{
	margin: auto 0;
}

.cg-registrazione-step-mainform-info{
	padding: 1.25rem;
    border-radius: 1rem;
	background-color: rgb(231 237 246);
	font-size: .75rem;
}

@media (min-width: 1024px) {
    #cg-registrazione-password-live-block {
        font-size: .875rem;
    }
}

/*promo*/
.promo-container{
	display: flex;
    flex-direction: column;
    gap: 10px;
}

.cg-registrazione-promo-item{
    padding: 1rem;
	border-radius: 1rem;
	display: flex;
    background-color: rgb(246 246 246 );
    position: relative;
}

.cg-registrazione-promo-text-container{
	display: flex;
	flex-direction: column;
    margin-left: .625rem;
}

.cg-registrazione-promo-text-title{
	font-weight: bold;
    font-size: .875rem;
}

.cg-registrazione-promo-text-desc{
    font-size: .75rem;
}
	
#cg-signup-balance-limit-info{
	display: flex;
	justify-content: flex-start;
    gap: .625rem;
}	

#cg-signup-balance-limit-info-text{
	margin: auto 0;
	font-size: .875rem;
}

/*otp*/
.cg-otp-field {
  display: flex;
  justify-content: center;
}
.cg-otp-field input {
  width: 100%;
  font-size: 27px;
  padding: 13px;
  text-align: center;
  border-radius: 11px;
  margin: 5px;
  background: darkgrey;
  font-weight: bold;
  color: white;
  outline: none;
  transition: all 0.1s;
  -webkit-appearance: none;
  -moz-appearance: textfield;
      border: solid 1px black;
}

.cg-otp-field input::-webkit-outer-spin-button,
.cg-otp-field input::-webkit-inner-spin-button {
    -webkit-appearance: none;
	margin: 0;
}

.cg-otp-field input:focus {
  border: 2px solid var(--tickets-button-border-color);
  box-shadow: 0 0 2px 2px #000000;
}

.cg-otp-field-space {
  margin-right: 1rem !important;
}





.custom-stepper {
  /**/
  /**/
  /**/
  --number-container-size: 24px;
  --spacer-height: 4px;
  --side-padding: 50px;
  --number-label-distance: 8px;
  --label-line-height: 20px;
  /**/
  --number-background-present: #608df2;
  --number-color-present: #ffffff;
  /**/
  --number-background-past: #00aa41;
  --number-color-past: #ffffff;
  /**/
  --number-background-future: #e6e6e6;
  --number-color-future: #5c5c5c;
  /**/
  --stepper-background-past: #00aa41;
  --stepper-background-future: #eaebec;
  /**/
  /**/
  /**/
  display: flex;
  gap: 8px;
  align-items: flex-start;
  width: 100%;
  padding: 0 var(--side-padding) calc(var(--number-label-distance) + var(--labels-max-computed-height, var(--label-line-height))) var(--side-padding);
  box-sizing: border-box;
}
.custom-stepper__step {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.custom-stepper__step--present {
  --number-background: var(--number-background-present);
  --number-color: var(--number-color-present);
}
.custom-stepper__step--past {
  --number-background: var(--number-background-past);
  --number-color: var(--number-color-past);
}
.custom-stepper__step--future {
  --number-background: var(--number-background-future);
  --number-color: var(--number-color-future);
}
.custom-stepper__step__number {
  width: var(--number-container-size);
  height: var(--number-container-size);
  border-radius: 999px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  background-color: var(--number-background) !important;
  color: var(--number-color);
  font: 600 14px/20px "Open Sans", sans-serif !important;
}
.custom-stepper__step__label {
  top: calc(var(--number-label-distance) + var(--label-line-height));
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  overflow-wrap: anywhere;
  width: max-content;
  max-width: calc(var(--custom-stepper-borderBox-inlineSize) / var(--steps, 1));
  font: 400 12px/20px "Open Sans", sans-serif;
}
.custom-stepper__spacer {
  margin-top: calc(var(--number-container-size) / 2);
  transform: translateY(-50%);
  flex: 1 1 0;
  height: 4px;
  border-radius: 999px;
  --spacer-background: var(--stepper-background-future);
  background: var(--spacer-background);
}
.custom-stepper__spacer--past {
  --spacer-background: var(--stepper-background-past);
}

/**/
/**/
/**/
/**/
/* custom registration */
.custom-registration__heading {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.custom-registration__title {
  margin: 0;
  color: rgba(0, 0, 0, 0.8);
  font: 600 20px/32px "Open Sans", sans-serif;
}
.custom-registration__paragraph {
  margin: 0;
  color: rgba(0, 0, 0, 0.8);
  font: 400 12px/16px "Open Sans", sans-serif;
}
.custom-registration__notification {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 16px;
  border-radius: 8px;
  padding: 16px;
  font: 400 14px/20px "Open Sans", sans-serif;
}
.custom-registration__notification__icon::after {
  content: "";
  display: block;
  width: 22px;
  height: 22px;
  background-color: var(--mask-color);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-image: var(--mask-image);
}
.custom-registration__notification--error {
  color: #333333;
  background: #fce7d7;
  --mask-color: #f8a127;
  --mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M9.56576 0.828125L0.20097 17.6615C-0.391269 18.7135 0.396621 20 1.63398 20H20.3688C21.6009 20 22.3888 18.7135 21.8019 17.6615L12.4318 0.828125C11.8131 -0.276042 10.1844 -0.276042 9.56576 0.828125ZM11.9294 7.8125L11.7391 14.1667H10.2585L10.0681 7.8125H11.9294ZM10.9988 17.625C10.433 17.625 9.98879 17.2031 9.98879 16.6667C9.98879 16.1302 10.433 15.7083 10.9988 15.7083C11.5646 15.7083 12.0087 16.1302 12.0087 16.6667C12.0087 17.2031 11.5646 17.625 10.9988 17.625Z' fill='currentColor' /%3E%3C/svg%3E");
}

/**/
/**/
/**/
/**/
/**/
/* Buttons */
.custom-registration__button--submit {
  box-sizing: border-box;
  width: 100%;
  background: #40b840;
  color: #ffffff;
  outline: none;
  border: 1.5px solid #40b840;
  border-radius: 4px;
  padding: 14px;
  font: 600 16px/24px "Open Sans", sans-serif;
}
.custom-registration__button--submit:focus {
  outline: none;
}
.custom-registration__button--back {
    box-sizing: border-box;
    width: 100%;
    background: transparent;
    color: #ff6600;
    outline: none;
    border: 1.5px solid #ff6600;
    border-radius: 4px;
    padding: 12px;
    font: 600 16px / 24px "Open Sans", sans-serif;
    min-width: 150px;
}

/**/
/**/
/**/
/**/
/**/
/**/
/**/
.custom-registration__redirect {
  font: 400 16px/24px "Open Sans", sans-serif;
  color: #333333;
}
.custom-registration__redirect a {
  text-decoration: none;
  color: #ff6600;
}

/**/
/**/
/**/
/**/
/**/
/**/
/**/
.custom-registration__hr {
  margin: 24px 0;
  width: 100%;
  border: none;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.1019607843);
}

/**/
/**/
/**/
/**/
/* SPACES */
.custom-stepper {
  margin-bottom: 12px;
}

.custom-registration__heading {
  margin-bottom: 24px;
}
.custom-registration__heading:not(:has(.custom-registration__paragraph)) {
  margin-bottom: 16px;
}

#gender-radios {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}

#custom-input-group {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.custom-input__chips-container {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

#custom-registration__buttons {
  margin-top: 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#custom-registration__already-registered {
  margin-top: 24px;
  text-align: center;
}

#drawer-search-bar {
  margin-top: 8px;
}

#custom-registration-notifications {
  margin-top: 24px;
}

#custom-checks {
  margin: 24px 0;
  gap: 24px;
}

#custom-checks > * {
  margin-bottom: 24px;
}



/*DRAWER*/

.drawer {
  position: fixed;
  inset: 0;
  left: 0;
  right: 0;
  z-index: -1;
  height: 100vh;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  visibility: hidden;
  pointer-events: none;
  --transition-time: 0.2s;
  /**/
  /**/
}
.drawer--open, .drawer--opening {
  z-index: 1;
  visibility: visible;
  pointer-events: all;
}
.drawer--opening .drawer__backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
.drawer--open .drawer__backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}
.drawer--closing .drawer__backdrop {
  background-color: rgba(0, 0, 0, 0);
}
.drawer__backdrop {
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
  transition: background-color var(--transition-time) linear;
}
.drawer--opening .drawer__content {
  height: max-content;
  max-height: 80%;
  transform: translateY(0);
}
.drawer--open .drawer__content {
  height: max-content;
  max-height: 80%;
  min-height: 80%;
  transform: translateY(0);
}
.drawer--closing .drawer__content {
  height: max-content;
  max-height: 80%;
  transform: translateY(100%);
}
.drawer__content {
  height: 0%;
  transform: translateY(100%);
}
.drawer__content {
  position: relative;
  z-index: 3;
  background: #ffffff;
  border-radius: 16px 16px 0 0;
  padding: 16px;
  height: 0%;
  width: 100%;
  transition: transform var(--transition-time) linear !important;
  display: flex;
  flex-direction: column;
}
.drawer__header {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 0 16px;
  color: rgba(0, 0, 0, 0.8705882353);
}
.drawer__header__text {
  font: 700 16px/24px "Open Sans", sans-serif;
}
.drawer__header__close {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  outline: none;
  background: transparent;
  padding: 0;
}
.drawer__header__close::after {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background-color: #ff6600;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M8.71778 9.78C9.01111 10.0733 9.48668 10.0733 9.78001 9.78C10.0733 9.48667 10.0733 9.0111 9.78001 8.71778L6.06224 5.00001L9.78 1.28226C10.0733 0.988936 10.0733 0.513362 9.78 0.220038C9.48667 -0.073287 9.0111 -0.073287 8.71778 0.220038L5.00002 3.93779L1.28223 0.219994C0.9889 -0.0733314 0.513327 -0.073331 0.220002 0.219994C-0.0733223 0.513318 -0.0733227 0.988891 0.220002 1.28222L3.9378 5.00001L0.219994 8.71782C-0.0733314 9.01114 -0.073331 9.48672 0.219994 9.78004C0.513318 10.0734 0.988891 10.0734 1.28222 9.78004L5.00002 6.06224L8.71778 9.78Z' fill='currentColor' /%3E%3C/svg%3E");
}
.drawer__body {
  margin-top: 16px;
  overflow: auto;
  min-height: 0;
  flex: 1 1 auto;
}
.drawer__search-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.drawer__search-li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 16px 12px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1019607843);
  font: 400 16px/24px "Open Sans", sans-serif;
  background: #ffffff;
  color: rgba(0, 0, 0, 0.8705882353);
}
.drawer__search-li--active {
  color: #ff6600;
  background: #fff0e7;
}
.drawer__search-li__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
}

.custom-strenght-psw {
    display: flex;
    flex-direction: column;
    padding: 5px 3px 5px 3px;
    gap: 5px;
}

.custom-strenght-psw .progress {
    height: 14px;
    padding: 2px;
    background-color: unset;
    border: 2px solid #0000001A;
    border-radius: 12px;
}

.custom-strenght-psw .progress .progress-bar {
    border-radius: 99px;
}

.custom-strenght-psw .progress .progress-bar.bg-orange {
    background-color: #F8A127;
}

.custom-strenght-psw .progress .progress-bar.bg-green {
    background-color: #00AA41;
}

#cg-strengthText {
	font-size: 12px;
}

/* ---------------------- STEP_RIEPILOGO ---------------------- */

.custom-step-group {
	border: 1px solid #0000001A;
    border-radius: 12px;
    margin-bottom: 16px;
}

.custom-step-group .custom-step-group__title {
    padding: 16px;
	display: flex;
    justify-content: space-between;	
}

.custom-step-group .custom-step-group__title .icon {
	cursor: pointer;
	transition: transform 0.3s ease;
}

.custom-step-group .custom-step-group__title .icon.rotated {
	transform: rotate(180deg);
}

.custom-step-group .custom-step-group__title>span {
    font-size: 14px;
}

.custom-step-group .custom-step-group__body.cg-show {
    padding: 16px 8px 16px 8px;
	border-top: 1px solid #0000001A;
}

.custom-step-group .custom-step-group__body {
    display: flex;
    flex-direction: column;
}

.custom-step-group .custom-step-group__body .custom-input__span {
	font-weight:400;
	font-size: 15px;
	line-height:24px;
}

/* fine------------------ STEP_RIEPILOGO ---------------------- */

/* ---------------------- POPUP_SWEET_ALERT2 ---------------------- */
#cg-pop-up-conferma-calcolo-cf, #cg-pop-up-autoriempimento-cf {
    border-radius: 1rem;
}

#cg-pop-up-conferma-calcolo-cf .swal2-html-container span, #cg-pop-up-autoriempimento-cf .swal2-html-container span {
    font-size: 16px;
    font-weight: 600;
    color: #252634;
}

#cg-signup-body .swal2-title {
    font-size: 18px;
    font-weight: 700;
    color: #252634;
}

#cg-signup-body .swal2-html-container {
    font-size: 16px;
    font-weight: 400;
    color: #252634;
}

#cg-signup-body .swal2-cancel{
    border-radius: 4px;
    min-width: 150px;
    padding: 12px;
    border: solid 2px #FF6600;
    color: #FF6600;
    background-color: white;
    text-transform: uppercase;
	font-weight: 600;
}

#cg-signup-body .swal2-actions button:focus {
	outline: none;	
}

#cg-signup-body .swal2-confirm {
    background-color: #40B840;
    border: none;
    border-radius: 4px;
    min-width: 150px;
    padding: 12px;
    color: #FFFFFFDE;
    text-transform: uppercase;
    font-weight: 600;
}

#cg-signup-body .swal2-actions {
    flex-direction: row-reverse;
    gap: 20px;
}
/* fine------------------ POPUP_SWEET_ALERT2 ---------------------- */

#cg-esito-registrazione-responsive .custom-registration__heading{
	display: flex;
    align-items: center;
}

#cg-signup-body .btn-modifica {
    cursor: pointer;
    padding: 8px 12px;
    font: 400 12px / 16px "Open Sans", sans-serif;
    color: #ff6600;
    background: #ffffff;
    border: 1px solid #ff6600;
    border-radius: 4px;
}