
.box{
	padding:0;
	margin-top:15px !important;
	margin-bottom:30px !important;
	box-shadow:none;
	border:2px solid #bbbbbb;
	border-radius:15px;
	}
	
.box:hover,
.box:focus{
  box-shadow: 0 5px 10px rgba(0,0,0,0.3);
	border:2px solid #ff9c31;
	border-radius:15px;
	}
	
.box .box-title{
  color: #fff;
  background: -webkit-radial-gradient(#7cc7ff,#007afe);
  background: -o-radial-gradient(#7cc7ff,#007afe);
  background: -moz-radial-gradient(#7cc7ff,#007afe);
  background: radial-gradient(#7cc7ff,#007afe);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#7cc7ff",endColorstr="#007afe",GradientType=1);
  background-color: #7cc7ff;
  border-top: 1px solid #7cc7ff;
  border-bottom: 1px solid #7cc7ff;
	padding:15px auto;
	border-radius: 13px 13px 0 0;
  text-shadow: -1px 1px 2px rgba(0,0,0,0.1);
	}
.box:hover .box-title, .box:focus .box-title{
  background-color: #ff9c31;
  color: #fff;
	background: rgb(255,199,49);
  background: radial-gradient(circle, rgba(255,199,49,1) 0%, rgba(255,156,49,1) 100%); 
  border-top: 1px solid #ff9c31;
  border-bottom: 1px solid #ff9c31;
  
}
.box .table{
	padding:0;
	margin:0;
	border:none;
	text-align:center;
	}
	
.box .table caption{
	margin:0 15px;
	text-align:center;
	font-size:12px;
	}
	
.box .box-select{
	width:100%;
	height:40px;
	}

.box h3{
	margin:0;
	padding:5px;
	color:#ffffff;
	border-radius:14px 14px 0 0;
	font-weight:bold;
	text-align:center;
  font-size : 22px;
	}

.box-title p{
	font-weight: 300;
  line-height: 14px;
  font-size: 12px;
  color: #666666;
  background-color: #ffffff;
  margin-bottom: 0;
  padding: 5px;
  text-align: center;
}
.box-title p span strong{
  font-weight: 900;
}
.box td{
	border:none !important;
	background-color:#f9f9f9;
	}
.box .alternata td{
	border:none !important;
	background-color:#ffffff;
  padding: 10px !important;
  border-radius: 0 0 13px 13px;
	}
.box tr td a{
	font-size:24px;
	line-height:23px;
	background-color:transparent;
	text-decoration:none !important;
  color: #000000;
	}

.box tr td a:hover{
	text-decoration:none;
	}



.box .btn-box .selectpicker{
	color: #ffffff !important;
  width: 100% !important;
  font-size: 10px !important;
  text-align: center;
  border-radius: 50px;
  background-color: #7cc7ff;
  border: none !important;
  letter-spacing: 0.5px;
  padding: 5px;
}
.box:hover .btn-box .selectpicker,.box:focus .btn-box .selectpicker{
  background-color: #ff9c31; 
}

.box a .bianco{
  font-family: 'Roboto Mono', monospace;
	color:#00000;
	font-weight:bold;
}
.box a .nero{
  font-family: 'Roboto Mono', monospace;
	color:#7cc7ff;
	font-weight:bold;
}
.box a .fa-solid{
	color:#7cc7ff;
	font-size:17px;
	padding: 0 10px;
}
.box:hover a .fa-solid{
	color:#ff9c31 !important;
}


.box tr td a:hover .bianco, .box tr td a:hover .nero{
	color:#ff9c31;
}
.table>tbody>tr>td, .table>tbody>tr>th, .table>tfoot>tr>td, .table>tfoot>tr>th, .table>thead>tr>td, .table>thead>tr>th{
	padding:5px !important;
	}

.bootstrap-select ul{
	max-height: 400px;
	overflow-y: scroll;
}

.btn-box .btn-group{
	margin:15px auto;
	width:90% !important;
	}

.tutti-numeri a .text{
	font-size: 20px !important;
}

.tutti-numeri h3{
	margin:0;
	padding:5px;
	color:#ffffff;
	border-radius:3px 3px 0 0;
	font-weight:bold;
	text-align:center;
	}

.tutti-numeri h3 span{
	font-size:15px;
	font-weight:300;
	letter-spacing:0.4px;
	}

.tutti-numeri a{
	font-size:26px;
	line-height:32px;
	background-color:transparent;
	text-decoration:none !important;
	}

.tutti-numeri a:hover{
	text-decoration:none;
	}
	
.tutti-numeri a:hover .bianco, .tutti-numeri a:hover .nero{
	color:#ff9c31;
	}
	
.tutti-numeri a .bianco{
	color:#000000;
	font-weight:bold;
	}

.tutti-numeri .box-num{
	border-bottom: 1px solid #ebebeb;
	text-align: center;
}
.tutti-numeri .box-num a .glyphicon{
	padding: 3px 10px;
}

/* FORMS */

.attivazione, .contattaci, .messaggi_vocali, .ricarica{
	background-color: #ffffff;
	border: 3px solid #7cc7ff;
	padding: 0;
	margin-bottom: 30px;
	border-radius: 5px;
	box-shadow: 0 5px 7px rgba(0,0,0,0.2);
}

.attivazione form ,.contattaci form ,.messaggi_vocali form ,.ricarica form {
	display: block;
	margin-top: 0;
}

.box-title-form{
	text-align: center;
	padding: 8px;
	font-size: 22px;
	margin-bottom: 10px;
	color: #ffffff;
	text-shadow: -1px 1px 2px rgba(0,0,0,0.1);
}

.box-title-form b{
	padding: 3px 10px;
	text-transform: uppercase;
	color: #7cc7ff;
	background-color: #ffffff;
	border-radius: 3px;
	margin-left: 10px;
	margin-right: 10px;
	text-shadow: none;
}

.box-title-form small{
	font-style: italic;
}

.title-form {
	text-align: center;
	padding: 5px;
	font-size: 20px;
	margin-bottom: 10px;
	color: #ffffff;
}

.bg-green{
  color: #fff;
  background: -webkit-radial-gradient(#7cc7ff,#007afe);
  background: -o-radial-gradient(#7cc7ff,#007afe);
  background: -moz-radial-gradient(#7cc7ff,#007afe);
  background: radial-gradient(#7cc7ff,#007afe);
  background-color: #7cc7ff;
  border-top: 1px solid #7cc7ff;
  border-bottom: 1px solid #7cc7ff;
}

.sep-form {
	display: block;
	height: 1px;
	background-color: #ebebeb;
	margin-top: 2px;
	margin-bottom: 2px;
}

.box-footer{
	display: inline-block;
	width: 100%;
}

input, select{
	height: 50px !important;
	border-radius: 0 5px 5px 0 !important;
}

.form-group{
	margin-bottom: 0 !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
  padding: 0 10px !important;
}
.alt-row{
	background-color: #f5f5f5;
	padding: 5px 0;
	margin-top: 5px !important;
	margin-bottom: 5px !important;
}

.input-group-addon {
    padding: 16px 12px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    color: #ffffff;
    text-align: center;
    background-color: #7cc7ff;
    border: 0;
    border-radius: 4px;
	min-width: 40px;
}
.input-group-addon i{
  vertical-align: baseline;
}
.form-control{
	border: 0;
	-webkit-box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
	box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
}
.form-control:focus{
	border: 0;
	box-shadow: none;
	outline-width: 0;
	-webkit-box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
	box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
}

#error-form p{
	font-size: 16px;
	text-align: center;
	color: #dd4b39;
	padding: 15px;
	border: 2px solid #dd4b39;
	border-radius: 5px;
	background-color: #f2dede;
}

.input-group{
	border: 2px solid rgba(0,0,0,0);
	border-radius: 6px;
}

.input-group:hover{
	border: 2px solid rgba(105, 185, 88, 1);
}

.box-contratto span.form-control-feedback{
    position: relative;
    top: -56px;
    right: 0;
    display: inline-block;
    width: 50px !important;
	height: 50px !important;
	font-size: 26px;
	float: left;
	background-color: #ffffff;
	padding-top: 12px;
	border: 2px solid;
	border-radius: 3px;
}

.box-contratto span.small{
	font-size: 10px;
	color: #999999;
	display: inline-block;
	line-height: 13px;
	padding-bottom: 7px;
	width: 100%;
	margin: 0 0 0 0;
}

span.text-contratto{
	display: block;
	margin: -30px 0 20px 40px;
}

.fa-check{
    color: #51af3d;
	font-size:20px;
	height: 22px;
}

.fa-xmark{
  color: #dd4b39;
	font-size:20px;
	height: 22px;
}

.nonvalido{
	position: absolute;
  z-index: 5;
  text-align: right;
  right: 5px;
  top: 35px;
	color: #dd4b39 !important;
	font-size: 11px;
	font-weight: bold;
}
.form-horizontal .has-feedback .form-control-feedback{
	position: absolute;
  top: 5px;
  right: 5px;
  z-index: 9;
}

.check-box{
	display: inline-block;
	width: 50px !important;
	height: 50px !important;
	border-radius: 5px;
}

input[type=checkbox] {
	width: 50px !important;
	height: 50px !important;
	margin: 0;
}

input[type=checkbox]:checked,
input[type=checkbox]:focus{
	width: 50px !important;
	height: 50px !important;
	margin: 0;
}


label.css-label {
	position: relative;
	left: 20px;
	bottom: 17px;
}

#contratto-error{
	position: absolute;
    top: 140px;
    right: 20px;
}


.add_service_text{
	font-weight: bold;
	display: inline-block;
	margin-top: 15px !important;
	margin-left: 5px;
	font-size:14px;
}
@media(min-width:768px){
	.add_service_text{
		font-weight: bold;
		display: inline-block;
		margin-top: 15px !important;
		margin-left: 20px;
		font-size:16px;
	}
}


.container-check {
	display: block;
	position: relative;
	padding-left: 50px;
	cursor: pointer;
	font-size: 16px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	margin-bottom: 0;
	line-height: 40px;
}

/* Hide the browser's default checkbox */
.container-check input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}

/* Create a custom checkbox */
.checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 40px;
	width: 40px;
	background-color: #ffffff;
	border:none;
	border-radius: 3px;
	-webkit-box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
	box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
}

/* On mouse-over, add a grey background color */
.container-check:hover input ~ .checkmark {
	background-color: #ebebeb;
}

/* When the checkbox is checked, add a blue background */
.container-check input:checked ~ .checkmark {
	background-color: #137cf4;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.container-check input:checked ~ .checkmark:after {
	display: block;
}

/* Style the checkmark/indicator */
.container-check .checkmark:after {
	left: 15px;
	top: 11px;
	width: 10px;
	height: 16px;
	border: solid white;
	border-width: 0 4px 4px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

#accettazione_contratto-error,
#accettazione_espressa-error,
#accettazione_privacy-error{
	top: 0 !important;
}

.form-group-custom,
.form-group-custom-2{
	display: inline-block;
    width: 100%;
    background: #e3f1f9;
    padding: 10px;
    margin-left: 0;
    min-height: 70px;
	border-radius: 5px;
}


@media(min-width:992px){
	.form-group-custom,
	.form-group-custom-2{
		margin-left: 10px;
	}

	.form-group-custom-2{
		margin-left: -10px;
	}
}

.loader-attivazione{
	top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background-color: rgba(255,255,255);
    position: fixed;
	text-align: center;
}
.loader-attivazione img{
	position: relative;
    top: 20%;
}


.riepilogo{
	background-color: #ffffff;
	border: 3px solid #7cc7ff;
	padding: 0;
	margin-bottom: 30px;
	border-radius: 5px;
	box-shadow: 0 5px 7px rgba(0,0,0,0.2);
}

.titolo-riepilogo{
  text-align: center;
  padding: 5px;
  font-size: 20px;
  margin-bottom: 10px;
  color: #ffffff;
	background-color: #7cc7ff !important;
}

.sep-form {
	display: block;
	height: 1px;
	background-color: #ebebeb;
	margin-top: 2px;
	margin-bottom: 2px;
}

.form-group span.field{
	text-align: left;
	font-weight: bold;
}
.form-group span.value{
	text-align: left;
}
@media (min-width:  768px) {
	.form-group span.field{
		text-align: right;
	}
}
.paypal{
	text-align: center;
}
.bonifico{
	padding-bottom: 15px;
}
.bonifico span{
	display: inline-block;
	width: 100%;
	line-height: 13px;
}

.tab-riepilogo .col-12{
  border: 2px solid #197bc1;
  padding: 5px 15px 0 15px;
}

.tab-riepilogo .titolo{
  border: 2px solid #197bc1;
  background-color: #197bc1;
  color: #ffffff;
  text-align: center;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
}
.tab-riepilogo .label-riep,
.tab-riepilogo .input-riep{
  border-bottom: 1px solid #ebebeb;
  padding-top: 3px;
  padding-bottom: 3px;
}
.tab-riepilogo .label-riep{
  font-style:italic;
  font-weight: 500;
  color: #444444;
}
.tab-riepilogo .titolo2{
  background-color: #ebebeb;
  color: #000000;
  text-align: center;
  margin-top: 5px;
  margin-bottom: 10px;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
}
.tab-riepilogo .iban{
  margin-bottom: 15px;
}

@media (max-width: 476px) {
  .form-container {
    border: none;
  }
}

.cardinfo-wrapper {
  display: flex;
  justify-content: space-around;
}

#closeForm{
  font-size: 30px;
  color: #333;
  text-align: right;
}

.btn-cardForm{
  font-size: 20px;
  color: #ffffff;
  background-color: #333;
  border-radius: 50px;
  padding: 14px;
  margin: 10px auto;
}
.btn-cardForm:hover{
  background-color: #000000;
  color: #ffffff !important;
}
#btn-closeForm{
  display: inline-block;
  width: 30px;
  height: 30px;
  text-align: center;
  float: right;
}
#pp-container {
  background-color: #FFF;
  width: 100%;
  transition: all 600ms cubic-bezier(0.2, 1.3, 0.7, 1);
  -webkit-animation: cardIntro 500ms cubic-bezier(0.2, 1.3, 0.7, 1);
  animation: cardIntro 500ms cubic-bezier(0.2, 1.3, 0.7, 1);
  z-index: 1;
}

#my-sample-form {
  background-color: #FFF;
  width: 100%;
  transition: all 600ms cubic-bezier(0.2, 1.3, 0.7, 1);
  -webkit-animation: cardIntro 500ms cubic-bezier(0.2, 1.3, 0.7, 1);
  animation: cardIntro 500ms cubic-bezier(0.2, 1.3, 0.7, 1);
  z-index: 1;
}

.cardinfo-label {
  display: inline-block;
  width: 100%;
  margin-bottom: 5px !important;
  font-size: 14px;
  font-weight: 700 !important;
  color: #333;
  line-height: 1.5;
  padding-left: 0 !important;
}

.cardinfo-exp-date {
  margin-right: 1em;
  width: 100%;
}

.cardinfo-cvv {
  width: 100%;
}


#button-pay {
  cursor: pointer;
  display: inline-block;
  width: 100% !important;
  font-size: 20px !important;
  border: 0 !important;
  color: #fff !important;
  background: #197bc1 !important;
  z-index: 0;
  -webkit-transform: translateY(-100px);
  transform: translateY(-100px);
  transition: all 500ms cubic-bezier(0.2, 1.3, 0.7, 1);
  opacity: 0;
  -webkit-appearance: none;
  margin: 10px auto 20px auto;
  border-radius: 50px !important;
}
#button-pay:hover {
  background: #005ea1 !important;
}
#button-pay:active {
  -webkit-animation: cardIntro 200ms cubic-bezier(0.2, 1.3, 0.7, 1);
  animation: cardIntro 200ms cubic-bezier(0.2, 1.3, 0.7, 1);
}
#button-pay.show-button {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

.cardinfo-card-number {
  position: relative;
}
.cardholder {
  position: relative;
}
/*--------------------
Inputs 
--------------------*/
.input-wrapper {
  height: 50px !important;
  border-radius: 5px !important;
  border: 1px solid #ccc;
  -webkit-box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
  -moz-box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
  box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,0.3);
}
.input-wrapper:focus{
  box-shadow: none;
  outline-width: 0;
  border: 1px solid #ccc;
}

.card-holder-name,
.cardinfo-card-number,
.cardinfo-exp-date,
.cardinfo-cvv {
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

#form-container{
  display:none;
}

#pp-container{
  display:block;
}

.faq h4{
  color:#7cc7ff;
}
.faq i{
  color:#ff9c31;
}


.table-tariffe .b p,.table-tariffe .g p {
  margin-top: 8px!important;
  display: inline-block;
  width: 100%;
  padding: 4px
}

.banner-tariffe {
  display: inline-block;
  width: 100%;
  min-height: 100px;
  color: #444;
  text-align: center;
  text-decoration: none !important;
}

.table-tariffe {
  border: 3px solid #ff910a;
  border-bottom: 3px solid #ff910a !important;
  border-radius: 5px;
  color: #222;
  text-align: center
}

.table-tariffe .b {
  background-color: #fff;
  display: inline-block;
  width: 100%;
  padding: 0 7px;
}

.table-tariffe .b p {
  margin-bottom: 8px!important;
  border: 2px solid #f5f5f5;
  text-align: center;
}

.table-tariffe .b:focus p,.table-tariffe .b:hover p {
  border: 2px solid #01b559
}

.table-tariffe .g {
  background-color: #f5f5f5;
  display: inline-block;
  width: 100%;
  padding: 0 7px;
}

.table-tariffe .g p {
  margin-bottom: 8px!important;
  border: 2px solid #ebebeb;
  text-align: center;
}

.table-tariffe .g:focus p,.table-tariffe .g:hover p {
  border: 2px solid #01b559
}

.table-tariffe .b:focus,.table-tariffe .b:hover,.table-tariffe .g:focus,.table-tariffe .g:hover {
  background-color: #e0f2f1
}


.table-tariffe .tariffe-head {
  display:inline-block;
  text-decoration: none !important;
  width: 100%!important;
  background-color: #ff910a!important;
  color: #fff;
  text-align: center;
  text-transform: uppercase
}

.table-tariffe .icon-tariffe {
  margin: 0 auto;
  width: 150px
}

.documenti{
	display: inline-block;
	width: 100%;
}
.documenti p{
	background-color: #7cc7ff;
	color: #ffffff;
	text-align: center;
	padding: 10px;
	margin: 0 !important;
	border-radius: 3px 3px 0 0;
}
.documenti ul{
	margin-left: 0;
	padding-left: 0;
	list-style: none;
	display: inline-block;
	width: 100%;
	border: 2px solid #7cc7ff;
	border-radius: 0 0 3px 3px;
}
.documenti ul li a{
	display: inline-block;
	width: 100%;
	color: #000000;
	text-decoration: none;
	padding: 7px 10px;
	border-bottom: 1px solid #ebebeb;
	background-color: #ffffff;
}
.documenti ul li a.green{
	background-color: #e5fae2;
}
.documenti ul li a i{
	color: #7cc7ff;
	margin-right: 10px;
}
.input-group>textarea.form-control{
  min-height: 110px;  
}