body {
	font-family: 'Segoe UI', Arial, sans-serif;
	background: #fff;
	margin: 0;
	padding: 0;
	color: #222;
	line-height: 1.8;
}

.container {
	max-width: 1200px;
	margin: 80px auto;
	background: #fff;
	border-radius: 12px;
	box-shadow: none;
	padding: 70px 60px 80px 60px;
}

h1 {
	font-size: 2.8rem;
	margin-bottom: 50px;
	text-align: center;
	line-height: 1.3;
}

.links {
	display: flex;
	justify-content: center;
	gap: 40px;
	margin-bottom: 65px;
	flex-wrap: wrap;
}

.links a {
	display: flex;
	align-items: center;
	gap: 9px;
	text-decoration: none;
	font-weight: 500;
	font-size: 1.08rem;
	padding: 10px 20px;
	border-radius: 6px;
}

.links i {
	font-size: 1.2em;
}

.introduction {
	margin-bottom: 70px;
}

.teaser {
	display: block;
	max-width: 100%;
	margin: 40px auto 0 auto;
	border-radius: 8px;
	box-shadow: 0 2px 12px rgba(0,0,0,0.07);
}

.gifs {
	display: flex;
	gap: 40px;
	margin: 70px 0 75px 0;
	justify-content: center;
	flex-wrap: wrap;
}

.gif-column {
	flex: 1 1 240px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.gif-column img {
	max-width: 100%;
	border-radius: 8px;
	box-shadow: 0 2px 12px rgba(0,0,0,0.07);
}

.gif-column h3 {
	text-align: center;
	margin-bottom: 15px;
	font-size: 1.3rem;
	color: #333;
}

.video-description {
	text-align: center;
	margin-top: 12px;
	font-size: 0.95rem;
	color: #666;
	font-style: italic;
}

.bibtex {
	background: #f4f6fa;
	border-radius: 8px;
	padding: 30px 30px 20px 30px;
	margin-top: 60px;
	font-size: 1.02rem;
}

.bibtex pre {
	background: none;
	border: none;
	font-size: 0.98rem;
	font-family: 'Fira Mono', 'Consolas', monospace;
	margin: 0;
	padding: 0;
	white-space: pre;
	overflow-x: auto;
	max-width: 100%;
	border-radius: 4px;
	scrollbar-width: thin;
	scrollbar-color: #ccc transparent;
}

.bibtex pre::-webkit-scrollbar {
	height: 6px;
}

.bibtex pre::-webkit-scrollbar-track {
	background: transparent;
}

.bibtex pre::-webkit-scrollbar-thumb {
	background: #ccc;
	border-radius: 3px;
}

.bibtex pre::-webkit-scrollbar-thumb:hover {
	background: #999;
}

@media (max-width: 700px) {
	.container {
		padding: 12px 2vw 24px 2vw;
	}
	.gifs {
		flex-direction: column;
		gap: 16px;
	}
}

.btn-custom {
	background-color: darkslategrey;
	color: white;
	border: none;
	border-radius: 6px;
	padding: 10px 20px;
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
}

.btn-custom:hover {
	background: darkslategrey;	
	color: white;
}

.btn-custom:active {
	background: darkslategrey;
	color: white;
}