*{
	margin:0;
	padding:0;
	box-sizing:border-box;
}

:root {
	--white:#FFF;
	--black:#444444;

	--grey:#444444;

	--yellow:#dff6a5;
	--violet:#c9bbf9;
	--rose:#f8cfd0;
}

.stop{ clear:both; }

a{
	text-decoration:none;
	color: inherit;
}

.trs-02{
	transition:all 0.2s;
	-webkit-transition:all 0.2s;
}
.trs-05{
	transition:all 0.5s;
	-webkit-transition:all 0.5s;
}
.trs-1{
	transition:all 1s;
	-webkit-transition:all 1s;
}
.trs-15{
	transition:all 1.5s;
	-webkit-transition:all 1.5s;
}
.trs-2{
	transition:all 2s;
	-webkit-transition:all 2s;
}

.align-c{ text-align:center; }
.align-l{ text-align:left; }
.align-r{ text-align:right; }

.t-u{ text-transform:uppercase; }
.t-l{ text-transform:lowercase; }

.full-div{
	width:100%;
	height:100%;
}

.back-cover{
	background-size:cover;
	background-position:center center;
}
.ofit-cover{
	object-fit:cover;
}

.d-ib{ display:inline-block; }
.d-b{ display:block; }
.d-f{ display:flex; }
.d-g{ display:grid; }
.d-none{ display:none; }


.grid-full-align{
	align-items:center;
	justify-content:center;
}

.w100{ width:100%; }
.w90{ width:90%; }
.w80{ width:80%; }
.h100{ height:100%; }
.w0{ width:0%; }
.h0{ height:0%; }

/* CURSOR */
.c-pointer{ cursor:pointer; }

/* POSITION */
.p-r{ position:relative; }
.p-a{ position:absolute; }
.p-f{ position:fixed; }

.p-0{
	top:0;
	left:0;
}
.p-t-0{ top:0; }
.p-r-0{ right:0; }
.p-b-0{ bottom:0; }
.p-l-0{ left:0; }

/* Z-INDEX */
.l-0{ z-index:0; }
.l-1{ z-index:1; }
.l-2{ z-index:2; }
.l-3{ z-index:3; }
.l-4{ z-index:4; }
.l-5{ z-index:5; }
.l-10{ z-index:10; }
.l-11{ z-index:11; }
.l-12{ z-index:12; }
.l-13{ z-index:13; }
.l-14{ z-index:14; }
.l-101{ z-index:100; }
.l-101{ z-index:101; }
.l-102{ z-index:102; }
.l-103{ z-index:103; }
.l-104{ z-index:104; }
.l-105{ z-index:105; }
.l-1000{ z-index:1000; }
.l-1001{ z-index:1001; }
.l-1002{ z-index:1002; }
.l-1003{ z-index:1003; }
.l-1004{ z-index:1004; }
.l-1005{ z-index:1005; }



.c-w{ color:var(--white); }
.c-black{ color:var(--black); }

.c-yellow{ color:var(--yellow); }
.c-violet{ color:var(--violet); }


.bc-white{ background-color:var(--white); }
.bc-yellow{ background-color:var(--yellow); }
.bc-violet{ background-color:var(--violet); }



.d-ib{ display:inline-block;}
.d-b{ display:block;}
.d-none{ display:none;}

.d-grid{ display:grid;}
.grid-full-align{ align-items: center; }
.grid-vert-align{ 
	align-items: center; 
}


.op-0{ opacity:0; }
.op-1{ opacity:1; }


.of-h{ overflow:hidden; }
.of-s{ overflow:scroll; }



/* BLOCK ALIGN */
.ver-align{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	display:block;
}
.hor-align{
	position:absolute;
	left:50%;
	transform:translateX(-50%);
	display:block;
}
.full-align{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	display:block;
}


.f-left{ float:left }
.f-right{ float:right; }
.stop{ clear:both; }



.c1{
	width:99%;
	float:left;
}
.c2{
	width:49%;
	margin-right:1%;
	float:left;
}
.c3{
	width:32.333%;
	margin-right:1%;
	float:left;
}
.c4{
	width:24%;
	margin-right:1%;
	float:left;
}
.c5{
	width:19%;
	margin-right:1%;
	float:left;
}
.c6{
	width:15.666%;
	margin-right:1%;
	float:left;
}

.t-size-1{ font-size:9px; }
.t-size-2{ font-size:10px; }
.t-size-3{ font-size:12px; }
.t-size-4{ font-size:14px; }
.t-size-5{ font-size:16px; }
.t-size-6{ font-size:18px; }
.t-size-65{ font-size:20px; }
.t-size-7{ font-size:24px; }
.t-size-75{ font-size:28px; }
.t-size-8{ font-size:32px; }
.t-size-9{ font-size:36px; }

.t-lh-1{ line-height:1 }
.t-lh-11{ line-height:1.1 }
.t-lh-12{ line-height:1.2 }
.t-lh-13{ line-height:1.3 }
.t-lh-14{ line-height:1.4 }

.circle{ border-radius:50%;}

.br-5{  border-radius:5px;  }
.br-10{ border-radius:10px; }
.br-15{ border-radius:15px; }
.br-20{ border-radius:20px; }
.br-25{ border-radius:25px; }
.br-30{ border-radius:30px; }
.br-35{ border-radius:35px; }

.br-t-25{ border-radius:25px 25px 0 0;}
.br-t-30{ border-radius:30px 30px 0 0;}
.br-t-35{ border-radius:35px 35px 0 0;}



.br-2b{ border-radius:2vw; }
.br-3b{ border-radius:3vw; }
.br-4b{ border-radius:4vw; }


.horizontal-scroll-father{
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
}
.horizontal-scroll-child{
	scroll-snap-align: center;
	flex-shrink: 0;
}