* { margin: 0; padding: 0; box-sizing: border-box; }
body {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100vh;
	perspective: 850px;
    perspective-origin: 62% 43%;
	overflow: hidden;
}
.Pizza {
	width: 550px;
	border: 1px solid #000;
	border-radius: 25px;
	padding: 15px 0;
	user-select: none;
    overflow: hidden;
	box-shadow: -11px 2px 0px #000, -32px -4px 20px #525252;
    transform: rotateY(44deg);
	transition: 1s;
}
.Pizza:hover {
	transform: none;
	box-shadow: 0 0 0px #000, 0 0 20px #525252;
}
.Pizza .name {
	font: bold 25px cursive;
	text-align: center;
	color: #000;
	margin-bottom: 10px;
}
.Pizza .pizzaBlock {
	overflow: hidden;
	position: relative;
	cursor: grab;
}
.Pizza .pizzaBlock:active {
	cursor: grabbing;
}
.Pizza .pizzaBlock .pizzaSlide {
	width: 400%;
	display: flex;
	height: 400px;
	position: relative;
	left: 0;
	transition: 1s;
}
.Pizza .pizzaBlock .pizzaSlide .item {
	width: 100%;
	height: 100%;
	background: linear-gradient(to top, #b3b3b3, transparent);
	display: flex;
	justify-content: center;
	align-items: center;
}
.Pizza .pizzaBlock .pizzaSlide .item img {
	height: 320px;
    z-index: 2;
	pointer-events: none;
	transition: .5s;
}
.Pizza .pizzaBlock .btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	padding: 12px 28px 15px;
	border-radius: 50%;
	outline: 0;
	border: 0;
	color: #fff;
    background: linear-gradient(45deg, red, #ffeb00);
    font: bold 30px cursive;
    cursor: pointer;
	z-index: 111111111;
    box-shadow: inset 0 0 15px #838383, -1px 4px 11px #000;
}
.Pizza .pizzaBlock .btn.prev { left: 3%; }
.Pizza .pizzaBlock .btn.next { right: 3%; }
.Pizza .pizzaBlock .plate {
	position: absolute;
	top: 50%;
    left: 50%;
    width: 360px;
    height: 90%;
    transform: translate(-50%, -50%);
    background: url(image/plate.png) no-repeat center / contain;
	z-index: 1;
	transition: .5s;
}
.Pizza .price {
    text-align: center;
    font: 28px cursive;
    margin: 10px 0 6px;
}
.Pizza .price span {
	font: 32px cursive;
	width: 80px;
    display: inline-block;
}
.Pizza .size {
    display: flex;
    justify-content: center;
    column-gap: 15px;
    padding-top: 10px;
    position: relative;
    width: 165px;
    margin: 0 auto;
}
.Pizza .size button {
    box-shadow: 0 0 5px rgb(0 0 0 / 50%), 0px 3px 0px 3px rgb(0 0 0 / 50%);
    color: #000;
    font: 22px sans-serif;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    border: 0;
    cursor: pointer;
    outline: 0;
    transition: .5s;
    background: transparent;
}
.Pizza .size button.it:hover {
    box-shadow: 0 0 5px rgb(0,0,0,.5), 0 3px 0 0 rgba(0,0,0,.5);
    transform: translateY(3px);
}
.Pizza .size .hover {
    position: absolute;
    top: 10px;
    left: 60px;
    width: 45px;
    height: 45px;
    background: linear-gradient(45deg, #ffd4d4, #3c3c3c);
    z-index: -1;
    border-radius: 50%;
    transition: .5s;
    perspective: 850px;
}
.Pizza .spices {
	perspective: 850px;
	width: 150px;
    margin: auto;
	cursor: grabbing;
}
.Pizza .spices .spicesSlide {
    width: 500%;
    height: 110px;
	display: flex;
    margin: 25px 0 30px;
    position: relative;
	left: -200%;
    transition: .8s;
    transform-style: preserve-3d;
}
.Pizza .spices .spicesSlide .item {
	width: 100%;
    transform: translateZ(calc(var(--i) * -400px));
    transition: .5s;
	filter: drop-shadow(0 16px 4px rgba(0,0,0,.5)) brightness(.5);
    -webkit-box-reflect: below -32px linear-gradient(transparent, #000);
}
.Pizza .spices .spicesSlide .item img {
    width: 100%;
    height: 100%;
    object-fit: contain;
	pointer-events: none;
}
.Pizza .pizzaBlock .spec {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 65%;
    height: 45%;
    transform: translate(-50%, -50%) scale(2);
    z-index: 2;
    opacity: 0;
    transition: .4s;
}
.Pizza .pizzaBlock .spec.GreenOnion {
    width: 28%;
}
.Pizza .pizzaBlock .spec.cucumber {
    width: 38%;
}
.Pizza .pizzaBlock .spec img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    pointer-events: none;
}
.author {
	position: fixed;
	top: 10px;
	left: 10px;
	text-align: center;
	font-family: cursive;
	font-size: 22px;
}
.author img {
	width: 100px;
	border-radius: 5px;
}
