
:root{
    --WHITE: #FFFFFF;
    --BLACK: #000000;
}

.bck_WHITE{
    background-color: var(--WHITE);
}
.bck_BLACK{
    background-color: var(--GOLD);
}
.color_WHITE{
    color: var(--WHITE);
}
.color_BLACK{
    color: var(--BLACK);
}

body
{
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	font-style: normal;	
	overflow-x:hidden;
}
h1,h3,h4,h4,h6,.title_font
{
	font-family: "scotch-display", sans-serif;
	font-weight: 600;
	font-style: normal;
	color:var(--BLACK);
	
}
h3
{
	font-family: "century-gothic", sans-serif;
	font-weight: 400;
	font-style: normal;	
}
b, strong{
    font-family: "Outfit", sans-serif;
    font-style:normal;
    font-weight:700;
}

.w_def{
    width: 90%;
    margin: auto;
}
.w_limited{
    margin: auto;
    max-width: 1100px;
}

.link{
    cursor: pointer;
    text-decoration: underline;
}

/********* HEADER ***********/
header.header_home {
  color: white;
  background: linear-gradient(to top, 
  rgba(0,0,0,0) 0%, 
  rgba(0,0,0,0.6) 20%, 
  rgba(0,0,0,0.6) 100%);
}

header.header_home  img {
  filter: brightness(0) invert(1);
}

header
{
	border:0px solid red;
	height:100px;
}

header .header_title{
    font-size: 40px;
	color:white;
}
header .ico_lang{
    width: 20px;
    height: 20px;
    border-radius: 30px;
    color: var(--BLACK);
    font-size: 20px;
}
/********* WRAP_MENU ***********/
#wrap_menu{
    position: absolute;
    top: 100%;
    right: 0;
    width: 100dvw;
    box-shadow: 0 0 10px rgba(0,0,0,0);
    background-color: white;
    padding: 100px;
    z-index: 50;
    color: var(--BLACK);
    display: flex;
    flex-direction: column;
    transition: 400ms ease-out;
    opacity: 0;
    visibility: hidden;
}
#wrap_menu .menu{
    list-style-type: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
	height:100%;
}
#wrap_menu .menu li{
	display:flex;
    flex-direction: column;
    align-items: center;
	margin:auto;

    padding: 10px;
    font-size: 36px;
    cursor: pointer;
	border-bottom:1px solid var(--ROSSO);
}
#wrap_menu .menu a{
	margin:auto;
	width:40%;
	padding-bottom:0px;
	color:#c91841;
	font-size:30px;
	font-weight:700;
}

#wrap_menu .menu li:hover{
	color:var(--BLACK);
}

#wrap_menu .menu li div{
    display: flex;
    align-items: center;
    gap: 10px;
}
#wrap_menu .submenu{
    display: none;
    padding-left: 40px;
    list-style-type: none;
}
#wrap_menu svg{
   transition: 400ms ease;
}
#wrap_menu svg.rotated{
   transform: rotate(90deg);
}
.menu_opened{
    overflow: hidden;
}
.menu_opened header #wrap_menu{
    /*clip-path: polygon(0 100%, 100% 100%, 100% 0, 0 0);*/
    opacity: 1;
    visibility: visible;
}
/********* END WRAP_MENU ***********/


/******* ICO_MENU ********/

#ico_menu{
	position: absolute;
	z-index: 70;
	cursor: pointer;
    height: 20px;
    width: 20px;
    right: 0;
	color: white;
}
#ico_menu .line, #ico_menu:before, #ico_menu:after{
	background-color: black;
}

#ico_menu .line{
	width: 100%;
	height: 2px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: 400ms ease;
}
#ico_menu:before, #ico_menu:after{
	content: ' ';
	position: absolute;
	right: 0;
	height: 2px;
	transition: 400ms ease;
}
#ico_menu:before{
	top: 0;
	width: 100%;
}
#ico_menu:after{
	bottom: 0;
	width: 100%;
}
.menu_opened #ico_menu .line{
	opacity: 0;
} 
.menu_opened #ico_menu:before{
	transform: rotate(45deg);
	top: 50%;
	background-color: black !important;
}
.menu_opened #ico_menu:after{
	transform: rotate(-45deg);
	width: 100% !important;
	top: 50%;
	background-color: black !important;
}
/******* END ICO_MENU ********/

.horiz_menu
{
	margin-top:-10px;
}
.horiz_menu a
{
	margin-left:50px;
	margin-right:50px;
	font-family: "Poppins", sans-serif;
	font-size:22px;
	font-weight: 300;
	font-style: normal;
}

/******* FOOTER *********/
footer
{
    background-color: var(--BLACK);
    color: var(--WHITE);
}
footer .grid
{
	align-items: center;
}
/******* END FOOTER *********/

#ico_menu .ico_menu_home, #ico_menu.ico_menu_home:before, #ico_menu.ico_menu_home:after{
	background-color: white;
}


#sfondo_home
{
	margin-top:-125px !important;
}

ul.cv {
  list-style: disc;
  padding: 0;
  padding-left:20px;
  margin: 0;
}

ul.cv li {
  border-radius: 8px;
  padding-bottom:10px;
  padding-top:10px;
  font-family: sans-serif;
  font-size:24px;
  transition: background 0.3s;
}

.foto
{
	border-radius:10%;
	border:5px white solid;
}