/* Commenta o rimuovi queste regole */

input:focus, button:focus,  .form-control:focus, .btn-light:focus {
    outline: none;
    border: 2px solid blue;
	/*background: revert;*/
	
}

 /* Custom styles to match the brand identity */
        body {
            font-family: "Roboto", sans-serif;
            line-height: 1.5;
            color: #20252b; /* Default text color */
        }

        .bg-generali-red {
            background-color: #c21b17 !important;
        }

        .bg-light-pink {
            background-color: #f5e6e6 !important;
        }

        .hero-banner {
            width: 100%;
            /*height: 632px; /* Maintain original height */
            object-fit: cover;
        }

        .card-existing-clients {
            border: 2px solid #9b9b9b;
        }
        
        .placeholder {
            background-color: #d9d9d9;
            width: 100%;
            min-height: 184px;
            border-radius: 4px;
        }

        .h-400 {
           min-height: 400px;
        }

        .game-card {
            border: 1px solid #B8B8B8;
            border-radius: 4px;
            background: white;
            position: relative;
			
			min-height: 300px;
        }

        .game-card.selected {
            border-color: #C21B17;
            background-color: #fff;
        }

        .game-controller {
            width: 80px;
            height: 80px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 45px;
            font-size: 2rem;
        }

        .controller-red { background-color: #dc3545; color: white; }
        .controller-green { background-color: #28a745; color: white; }
        .controller-blue { background-color: #007bff; color: white; }
        .controller-orange { background-color: #fd7e14; color: white; }

        .btn-play {
            background-color: #c21b17;
            color: white;
            border: none;
            padding: 4px 20px;
            border-radius: 4px;
            font-weight: bold;
            text-transform: uppercase;
			margin-top: 40px;
			position: absolute;
			left:10%;
			width:80% !important;
			bottom:10px;
			
        }
		.btn-play-2 {
            background-color: #c21b17;
            color: white;
            border: none;
            padding: 4px 20px;
            border-radius: 4px;
            font-weight: normal;
			font-size: 14px !important;
            text-transform: uppercase;
			margin-top: 40px;
			position: absolute;
			left:10%;
			width:80% !important;
			bottom:10px;
			
        }

        .btn-play:hover {
            background-color: #a01511;
            color: white;
        }

        .btn-play:disabled {
            background-color: #6c757d;
        }
		
		.joydisabled{
			
			color:#adaeb0;
			font-size:14px;
			font-weight: normal;
		}
        .treasure-chest {
            width: 60px;
            height: 50px;
            background-color: #8B4513;
            border-radius: 5px;
            margin: 0 auto 10px;
            position: relative;
        }

        .treasure-chest::before {
            content: '';
            position: absolute;
            top: -5px;
            left: 50%;
            transform: translateX(-50%);
            width: 40px;
            height: 20px;
            background-color: #DAA520;
            border-radius: 10px 10px 0 0;
        }

        .profile-circle {
            width: 50px;
            height: 50px;
            border-radius: 50%;
            background-color: #333;
            position: absolute;
            top: -10px;
            right: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
        }

		.heroback{
			
			background: url("/lasciatisorprendere25_26/img/3838x1322_concorso_ragazza_nostro_interna.jpg") center / cover no-repeat;
  			 /* aspect-ratio: 16 / 9;     crea l’altezza in base alla larghezza */
  			width: 100%;
			min-height: 400px;
			display: flex;
			align-items: flex-end;
						
		}

        /* Responsive font sizes */
        h1, .h1 { font-size: 2rem; } /* 32px */
        h2, .h2 { font-size: 1.5rem; } /* 24px */
        h3, .h3 { font-size: 1.25rem; } /* 20px */

        @media (max-width: 768px) {
            h1, .h1 { font-size: 1.5rem; } /* 24px */
            h2, .h2 { font-size: 1.25rem; } /* 20px */
            h3, .h3 { font-size: 1.1rem; } /* 18px */
            .hero-banner { height: auto; }
        }
		
		/*new*/
		.btn-outline-danger {
			color: #C21B17;
			border-color: #C21B17;
			border-radius:4px;
			border: 2px solid;
			padding:5px 45px !important;
		}
		.btn-outline-danger:hover {
			color: #ffffff;
			background-color: #C21B17;
			border-color: #C21B17;
		}
		@media (max-width:768px){
			
			.btn-outline-danger{
				
				width:100%;
			}
			
		}
		/* Stili aggiunti per la Pagina 2 */
.text-generali-red {
    color: #c21b17;
}

.text-brand-dark {
    color: #3D4047;
}

.font-size-40 {
    font-size: 40px;
}

.max-width-600 {
    max-width: 600px;
}

.profile-icon {
    font-size: 24px;
}

.prize-image {
    width: 100px;
    height: 100px;
}

.game-card.disabled .prize-image {
    opacity: 0.5;
}

.prize-card-title {
    font-size: 0.8rem;
}

.min-h-200 {
    min-height: 200px;
}

.min-h-250 {
    min-height: 250px;
}

.family-illustration-container {
    width: 200px;
    height: 200px;
    margin: 0 auto;
    position: relative;
    background-color: #e9ecef;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.font-size-1-1 {
    font-size: 1.1rem;
}


.btn.disabled, .btn:disabled
 {
    opacity: 1 !important;
}

/* ********************************** TOME  ********************************  */

.formreg div{
	display:block !important;
}
  
.formreg .box-content{
    padding:8px; 
}

.formreg {
	margin-top:15px;
}



.buttonred {
	padding:10px 40px;
	color:#ffffff;
	background: #c21b17;
/*background-image: linear-gradient(332.44deg, #D5281B 0%, #C5281C 100%);*/
	font-weight: 700;
	letter-spacing: 1.5px;
	width: 100%;
	display:block;
	text-align: center;
	border-radius: 4px;
	text-decoration: none;
}

.buttonred:hover {
	
	color:#ffffff;
	background: rgb(213,40,27);
	background-image: linear-gradient(332.44deg, #C5281C 0%, #D5281B 100%);
	text-decoration: none;
	
}


.buttonred-premi {
	padding:10px 17px;
	color:#ffffff;
	background: #c21b17;
/*background-image: linear-gradient(332.44deg, #D5281B 0%, #C5281C 100%);*/
	font-weight: 700;
	letter-spacing: 1.5px;
	width: 100%;
	display:block;
	text-align: center;
	border-radius: 4px;
	text-decoration: none;
}

.buttonred-premi:hover {
	
	color:#ffffff;
	background: rgb(213,40,27);
	background-image: linear-gradient(332.44deg, #C5281C 0%, #D5281B 100%);
	text-decoration: none;
	
}


.buttonred-outline {
	padding:10px 40px;
	color:#C5281C;
	background: #ffffff;
	font-weight: 700;
	letter-spacing: 1.5px;
	width: auto;
	display:block;
	text-align: center;
	border-radius: 4px;
	text-decoration: none;
    border:2px solid #C5281C;
    font-size:14px;
    text-transform: uppercase;
}


.buttonred_vai {
	padding:10px 40px;
	color:#ffffff;
	background-color: #BEBFC3;
	/*background-image: linear-gradient(332.44deg, #D5281B 0%, #C5281C 100%);*/
	font-weight: 700;
	letter-spacing: 1.5px;
	width: 100%;
	display:block;
	text-align: center;
	border-radius: 4px;
	text-decoration: none;
}

.content-block {
	background-color: #FFFFFF;
	border: 1px solid rgba(255, 255, 255, 0.5);
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
	position: relative;
	top: -70px;
	padding:50px 20px 0px 20px ;
}

.wrapper-content {
	width: 100%;
	padding:0 100px 0px 20px ;
}

.buttonarrow-back {
	text-align: left;
	display: block;
	width:100%;
	margin:10px 0;
	color:#C5281C;
	text-decoration: none;
	
}
.buttonarrow-back:hover {
	/*color:#000000;*/
	text-decoration: underline;
	
}
.buttonarrow-back::before {
	content:"\f060";
	margin-right:10px;
	font-family: "Font Awesome 5 Pro";
	
}

#tasto1:hover {
	color:#ffffff !important;
}

#tasto2:hover {
	color:#ffffff !important;
}

#tasto3:hover {
	color:#ffffff !important;
}


/* Box QR + store: responsive */
.store-cta{
  display:flex; align-items:center; gap:16px; flex-wrap:wrap;
}
@media (min-width: 768px){
  .store-cta{ flex-wrap:nowrap; }
}
.qr-img{
  width:96px; height:auto; flex:0 0 auto;
}
@media (min-width: 768px){
  .qr-img{ width:120px; }
}
.store-copy{
  min-width: 240px; /* evita salti strani con le icone */
}
.badges{
  display:flex; gap:12px; flex-wrap:wrap;
}
.badges img{
  height:40px; width:auto; max-width:100%;
}
@media (max-width: 575.98px){
  .store-cta{ justify-content:center; text-align:center; }
  .store-copy{ width:100%; }
  .badges{ justify-content:center; } /* aggiunta: centra le badge su mobile */
}

#cookiescript_accept{text-decoration:underline;}
#cookiescript_reject{text-decoration:underline;}

.rc-anchor-pt a {text-decoration: underline !important;}

.btn-dark:focus {
  outline: 2px solid #000ef9; /* bianco */
  outline-offset: 2px;
}

.nofocus{
	border: 0px !important;
	box-shadow: none !important;
}

