@charset "utf-8";
/* CSS Document */

/* ============================
	GENERALI
   ============================ */

:root {
	--c1: #4a4a49;
	--c2: #8a0014;
	--c3: #0F0705;
	--font: "Miele Elements";
	--wNormal: 300;
	--wBold: bold;
}

.wNormal {
	font-weight: var(--wNormal);
}

.wBold {
	font-weight: var(--wBold);
}

body {
	font-family: var(--font), sans-serif;
	font-weight: var(--wNormal);
	font-style: normal;
	font-size: 16px;
	color: var(--c1);
	background-color: white;
}

.row {
	margin-left:0px;
	margin-right:0px;
}

h1, h2, h3, h4, p, a {
	font-family: var(--font), sans-serif;
	font-weight: var(--wBold);
	font-style: normal;
	color: var(--c1);
}

p {
  	font-weight: var(--wNormal);
}

a {
  	text-decoration: underline;
}

a:hover, a:focus, a:active {
  	color: var(--c1);
}

.navbar-toggler:focus { /* rimuove l'ombra di selezione del bottone di Bootstrap */
  	box-shadow: 0 0 0 0px !important;
}

.bg-red {
  background-color: var(--c2);
 }
 .text-red {
  color: var(--c2);
 }

 #meccaniche {
	position: relative;
	z-index: 1000;
	margin-top: -30vh;
 }

 .bg-he {
    width: 100%;
    background-image: 
        linear-gradient(
            rgba(138, 0, 20, 0.6), 
            rgba(138, 0, 20, 0.6)
        ), 
        url('../img/banner_he_mobile.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
	background-attachment: fixed;
	border: 1px solid #fff;
	transition:  .2s ease;
	position: relative;
}

.bg-eg {
    width: 100%;
    background-image: 
        linear-gradient(
            rgba(0, 0, 0, 0.6), 
            rgba(0, 0, 0, 0.6)
        ), 
        url('../img/banner_eg_mobile.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
	background-attachment: fixed;
	border: 1px solid #fff;
	transition:  .2s ease;
	position: relative;
}

.bg-he:hover {
	 background-image: 
        linear-gradient(
            rgba(138, 0, 20, 0.3), 
            rgba(138, 0, 20, 0.3)
        ), 
        url('../img/banner_he_mobile.jpg');
		box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
		margin-top:-1vh;
		border: 3px solid #fff;
		transition:  1s ease;
}

.bg-eg:hover {
	 background-image: 
        linear-gradient(
            rgba(0, 0, 0, 0.3), 
            rgba(0, 0, 0, 0.3)
        ), 
        url('../img/banner_eg_mobile.jpg');
		box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
		margin-top:-1vh;
		border: 3px solid #fff;
		transition:  1s ease;
}

.bg-he:before {
	content: '\F3EB';
	width: 6rem;
	height: 6rem;
	padding: 1rem;
	border-radius: 12rem;
	background-color: rgba(138, 0, 20, 1);
	font-family: "bootstrap-icons" !important;
	font-size: 4rem;
	line-height: 1;
	position: absolute;
	top: -8rem;
	left: 50%;
	transform: translateX(-50%);
	transition: background-color 0.3s ease;
}

.bg-eg:before {
	content: '\F534';
	width: 6rem;
	height: 6rem;
	padding: 1rem;
	border-radius: 12rem;
	background-color: rgba(0, 0, 0, 1);
	font-family: "bootstrap-icons" !important;
	font-size: 4rem;
	line-height: 1;
	position: absolute;
	top: -8rem;
	left:50%;
	transition: background-color 0.3s ease;
}

 @media screen and (max-width: 768px) {
	 #meccaniche {
		margin-top: 0vh;
	 }
	 .bg-he:before, .bg-eg:before {
		display: none;
	 }
 }


.underline {
	background-color: var(--c3);
}
.text-white {
	color: #fff;
}
#partecipa_body_1,
.button, .button-yellow {
	color: white;
	background: #f59b00;
	border: 0px solid transparent;
	outline: none;
	border-radius: 15px;
	font-family: var(--font), sans-serif;
	font-weight: var(--wBold);
	font-size: 1.1rem;
	padding: .5rem 2.5rem;
	width: max-content;
	max-width: 550px;
  	text-decoration: none;
	position: relative;
	z-index: 3000;
}

#partecipa_body_1:hover,
.button:hover, .button-yellow:hover
 {
	color: white;
	background: var(--c1) ;
}

.btn-red {
	color: white;
	background: rgba(138, 0, 20, 1);;
	border: 0px solid transparent;
	outline: none;
	border-radius: 15px;
	font-family: var(--font), sans-serif;
	font-weight: var(--wBold);
	font-size: 1.1rem;
	padding: .5rem 2.5rem;
	width: max-content;
	max-width: 550px;
  	text-decoration: none;
	position: relative;
	z-index: 3000;
}

img[src="assets/img/X.png"] {
	max-width: 3rem;
}

@media (max-width:991px) {
	img[src="assets/img/X.png"] {
		max-width: 2rem;
	}
}

@media (max-width:576px) {
	#partecipa_body_1,
	.button {
		font-size: 1.2rem;
		padding: .5rem 1.6rem;
		max-width: 350px;
	}
	img[src="assets/img/X.png"] {
		max-width: 1.5rem;
	}
}

@media (max-width:375px) {
	#partecipa_body_1,
	.button {
		font-size: 1rem;
		padding: .5rem 1.2rem;
		max-width: 250px;
	}
	img[src="assets/img/X.png"] {
		max-width: 1.3rem;
	}
}

@media(max-width:1400px) {
	#partecipa_body_1 {
		font-size: 1.4rem;
	}
}

.list {
	margin-bottom: 1rem;
	padding-left: 1rem;
}

img[src="assets/img/step3.svg"],
img[src="assets/img/step2.svg"],
img[src="assets/img/step1.svg"] {
  	max-height: 200px;
}

img[src="assets/img/house.png"],
img[src="assets/img/family.png"],
img[src="assets/img/chef.png"],
img[src="assets/img/menu.png"],
img[src="assets/img/soap.png"] {
  	max-height: 100px;
}

/* ============================
	MENU
   ============================ */

.skip-to-main-content-link {
	position: absolute;
	left: -9999px;
	z-index: 999;
	padding: 1em;
	background-color: black;
	color: white;
	opacity: 0;
}

.skip-to-main-content-link:focus {
	left: 50%;
	transform: translateX(-50%);
	opacity: 1;
}

#attiva_menu {
	max-width: 30px;
	margin: 10px 25px;
	cursor: pointer;
}

.bi-list {
	font-size: 3rem;
	color: var(--c1);
}

#menu {
	background-color: white;
}

#menu_list {
	padding-left: 0px;
	margin-bottom: 0px;
}

#menu_list li {
	list-style-type: none;
	float: left;
}

#menu_list li a {
	display: block;
	text-align: center;
	text-decoration: none;
	padding: 0px 10px;
	color: var(--c2);
	font-weight: var(--wNormal);
	font-size: 16px;
}

@media (max-width: 991px) {
	#menu_list li {
		float: none;
	}
	#menu_list li a {
		text-align: right;
    	font-size: 16px;
	}
}

#menu_list li a:hover, #menu_list li a.active {
	text-decoration: none !important;
	color: var(--c2);
  	font-weight: var(--wBold);
}

.modal-body {
	background-color: #fff;
}

#logo {
  	max-width: 200px;
}
/* ============================
	HOME
   ============================ */

.carousel-item::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0); /* Uno strato nero trasparente al 30% */
}

/* ============================
	FORM
   ============================ */

#errore {
	color: #ac182d;
	font-weight: var(--wBold);
	text-align: center;
	font-size: 24px;
}

label, input, select {
  	color: var(--c1);
}

p.col-1 {
	width: 1%;
}

.form-group {
	margin-bottom: 15px;
}

small.small {
	font-size: 10px;
	line-height: 9px;
}

@media (max-width: 575px) {
	label {
		font-size: .80rem;
	}
}

.bi-info-circle-fill:hover {
  	color: var(--c2);
}



.selection-card {
        border: 2px solid #e9ecef;
        border-radius: 15px;
        transition: all 0.3s ease;
        cursor: pointer;
        background-color: #fff;
    }

    .selection-card:hover {
        border-color: var(--c2);
        transform: translateY(-5px);
        box-shadow: 0 10px 20px rgba(0,0,0,0.1);
    }

    .selection-card.active {
        border-color: var(--c2);
        background-color: #f8fbff;
        box-shadow: 0 5px 15px rgba(13, 110, 253, 0.2);
    }

    .icon-wrapper i {
        transition: transform 0.3s ease;
    }

    .selection-card.active .icon-wrapper i {
        transform: scale(1.2);
    }

	.collassato {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.3s ease;
	}
/* ============================
	FOOTER
   ============================ */

footer {
	background-color: var(--c2);
}

footer p {
	color: white;
	font-family: var(--font), sans-serif;
	font-weight: var(--wNormal);
	font-style: normal;
	text-align: center;
}

footer p a {
	color: white;
	text-decoration: underline;
	font-weight: var(--wBold);
}

footer p a:hover {
	color: white;
}

@media(max-width:576px) {
	.mail_info {
		word-break: break-all;
	}
}

/* =========================
	COOKIE BAR
	======================= */

.cc-window {
	font-size: .85rem !important;
	line-height: 1.2em !important;
}

.bi-check-circle-fill {
	font-size: 50px;
}

@media (max-width:767px) {
	.cc-window {
		font-size: .75rem !important;
		line-height: 1.1em !important;
	}
}
