@import url('https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap');
:root {
  --clr-white: #efefef;

  /* BlueSprint specific palette */
  --clr-prime-100: #dbeafe;
  --clr-prime-200: #bfdbfe;
  --clr-prime-300: #93c5fd;
  --clr-prime-400: #60a5fa;
  --clr-prime-500: #3b82f6;
  --clr-prime-600: #2563eb;
  --clr-prime-700: #1d4ed8;
  --clr-prime-800: #1e40af;
  --clr-prime-900: #1e3a8a;

  /* Neutral palette (Slate) */
  --clr-mono-050: #f8fafc;
  --clr-mono-100: #f1f5f9;
  --clr-mono-200: #e2e8f0;
  --clr-mono-300: #cbd5e1;
  --clr-mono-400: #94a3b8;
  --clr-mono-500: #64748b;
  --clr-mono-600: #475569;
  --clr-mono-700: #334155;
  --clr-mono-800: #1e293b;
  --clr-mono-900: #0f172a;
  --clr-mono-950: #020617;
}
:root {
  /* Text Colors */
  --txt-30: var(--clr-mono-500);
  --txt-40: var(--clr-mono-400);
  --txt-50: var(--clr-mono-300);
  --txt-60: var(--clr-mono-200);
  --txt-70: var(--clr-mono-100);
  --txt-80: var(--clr-mono-050);
  --txt: var(--txt-60);

  --txt-link: var(--clr-prime-400);
  --txt-prime: var(--clr-prime-500);

  /* Background Colors */
  --bkg-10: var(--clr-mono-950);
  --bkg-20: var(--clr-mono-900);
  --bkg-30: var(--clr-mono-850);
  --bkg-40: var(--clr-mono-800);
  --bkg: var(--clr-mono-900);

  /* Border Colors */
  --bdr-30: rgba(255, 255, 255, 0.05);
  --bdr-40: rgba(255, 255, 255, 0.1);
  --bdr-50: rgba(255, 255, 255, 0.15);
  --bdr: var(--bdr-40);
}
:root {
  --page-width: 70rem;
  --header-height: 4rem;
}
/* #region    Basic Resets */
* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	min-width: 0;
	min-height: 0;
}
html,
body {
	/*height: 100%;*/
}
body {
	display: flex;
	flex-direction: column;
	background-color: var(--bkg-10);
	color: var(--txt);
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}
a {
	color: var(--txt-link);
	text-decoration: none;
	transition: color 0.2s ease;
}
main {
	flex: 1;
}
a:hover {
	color: var(--clr-prime-300);
}
/* #endregion Basic Resets */
/* #region    Scroll Bar */
::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}
::-webkit-scrollbar-track {
	background: var(--bkg-10);
}
::-webkit-scrollbar-thumb {
	background: var(--clr-mono-700);
	border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
	background: var(--clr-mono-600);
}
/* #endregion Scroll Bar */
.page-index .hero {
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 2rem 2rem 4rem 2rem;
		text-align: center;
	}
.page-index .hero .logo-mark {
			margin-bottom: 2rem;
		}
.page-index .hero .logo-mark img {
				height: 140px;
				width: auto;
			}
.page-index .hero h2 {
			font-weight: 300;
			font-size: 1.75rem;
			color: var(--txt-50);
			letter-spacing: 0.1em;
			text-transform: uppercase;
		}
.page-index .video-section {
		display: flex;
		justify-content: center;
		padding: 0 2rem 8rem 2rem;
	}
.page-index .video-section .video-thumb {
			position: relative;
			width: 100%;
			max-width: var(--page-width);
			aspect-ratio: 16 / 9;
			background: var(--bkg-20);
			border: 1px solid var(--bdr);
			border-radius: 12px;
			overflow: hidden;
			display: block;
		}
.page-index .video-section .video-thumb img {
				display: block;
				width: 100%;
				height: 100%;
				-o-object-fit: cover;
				   object-fit: cover;
			}
/* Play button overlay */
.page-index .video-section .video-thumb::before {
				content: "▶";
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				font-size: 3rem;
				color: white;
				background-color: rgba(0, 0, 0, 0.6);
				width: 5rem;
				height: 5rem;
				border-radius: 50%;
				display: flex;
				align-items: center;
				justify-content: center;
				padding-left: 0.5rem; /* Optical centering for the play icon */
				transition: transform 0.2s ease, background-color 0.2s ease;
				z-index: 1;
			}
.page-index .video-section .video-thumb:hover::before {
				transform: translate(-50%, -50%) scale(1.1);
				background-color: rgba(0, 0, 0, 0.8);
			}
/* Page specific styles */
footer {
	text-align: center;
	padding: 2rem;
	color: var(--txt-30);
	font-size: 0.875rem;
}

/*# sourceMappingURL=all-bundle.css.map */