html, body {
	height: 100%;
	margin: 0;
	padding: 0;
	width: 100vw;
	height: 100vh;
}
body {
	width: 100vw;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100vh;
	min-width: 100vw;
	overflow: hidden;
}
.container {
	background: #fff;
	width: 90vw;
	max-width: 1200px;
	min-width: 280px;
	height: 90vh;
	max-height: 800px;
	min-height: 320px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	position: relative;
	border-radius: 2vw;
}
.video-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1;
	width: 100%;
}
video {
	width: 60vw;
	max-width: 600px;
	min-width: 180px;
	aspect-ratio: 16/9;
	height: auto;
	max-height: 50vh;
	min-height: 120px;
	background: transparent;
	border-radius: 1vw;
	object-fit: contain;
	display: block;
}
.dots {
	display: flex;
	justify-content: center;
	margin-top: 4vh;
	gap: 6vw;
}
.dot {
	width: 5vw;
	max-width: 32px;
	min-width: 16px;
	height: 5vw;
	max-height: 32px;
	min-height: 16px;
	background: #c00;
	border-radius: 50%;
	display: inline-block;
	margin: 0 0.5vw;
}
@media (max-width: 900px) {
	.container {
		width: 98vw;
		height: 98vh;
		max-width: 98vw;
		max-height: 98vh;
		border-radius: 3vw;
	}
	video {
		width: 80vw;
		max-width: 90vw;
		min-width: 120px;
		max-height: 40vh;
	}
	.dots {
		gap: 8vw;
		margin-top: 3vh;
	}
}
@media (max-width: 600px) {
   .container {
	   width: 100vw;
	   height: 100vh;
	   max-width: 100vw;
	   max-height: 100vh;
	   min-width: 180px;
	   min-height: 240px;
	   border-radius: 0;
	   padding: 0 2vw;
   }
   .video-wrapper {
	   padding-top: 6vw;
   }
   video {
	   width: 100vw;
	   max-width: 100vw;
	   min-width: 80px;
	   max-height: 32vh;
	   border-radius: 0;
	   object-fit: contain;
   }
   .dots {
	   gap: 12vw;
	   margin-top: 6vw;
   }
   .dot {
	   width: 14vw;
	   height: 14vw;
	   min-width: 24px;
	   min-height: 24px;
	   max-width: 40px;
	   max-height: 40px;
	   margin: 0 2vw;
   }
}
