/* =========================================================
   BLUE PAD — GLOBAL NAV
   ========================================================= */

nav[class*="-nav"]:not(.bp-shared-nav){
	display:none!important;
}

.bp-site-tools{
	display:none!important;
}

body .bp-shared-nav{
	--signal:#DFFF48;
	--violet:#6657FF;
	--cyan:#78E7FF;

	position:fixed!important;
	z-index:2147483000!important;
	top:14px!important;
	left:50%!important;
	right:auto!important;

	width:min(calc(100vw - 28px),1540px)!important;
	max-width:none!important;

	transform:translateX(-50%)!important;

	padding:13px 16px 13px 20px!important;

	border:0!important;
	border-radius:21px!important;

	display:flex!important;
	align-items:center!important;
	justify-content:space-between!important;

	font:800 12px/1 Arial,Helvetica,sans-serif!important;
	letter-spacing:.12em!important;
	text-transform:uppercase!important;

	color:#fff!important;

	background:
		radial-gradient(circle at 12% 50%,rgba(120,231,255,.055),transparent 24%),
		radial-gradient(circle at 88% 50%,rgba(223,255,72,.03),transparent 25%),
		linear-gradient(180deg,rgba(12,13,22,.56),rgba(5,6,10,.42))!important;

	-webkit-backdrop-filter:blur(18px) saturate(1.18)!important;
	backdrop-filter:blur(18px) saturate(1.18)!important;

	box-shadow:
		0 16px 54px rgba(0,0,0,.20),
		0 0 0 1px rgba(255,255,255,.075),
		inset 0 1px 0 rgba(255,255,255,.075),
		0 0 34px rgba(102,87,255,.045)!important;

	overflow:hidden!important;
	isolation:isolate!important;

	transition:
		top .32s cubic-bezier(.2,.8,.2,1),
		padding .32s cubic-bezier(.2,.8,.2,1),
		border-radius .32s cubic-bezier(.2,.8,.2,1),
		background .32s ease,
		box-shadow .32s ease!important;
}

body .bp-shared-nav:before{
	position:absolute;
	z-index:-1;
	inset:0;

	content:"";

	border-radius:21px;
	padding:1px;

	background:
		linear-gradient(
			105deg,
			rgba(120,231,255,.78),
			rgba(102,87,255,.16) 24%,
			rgba(102,87,255,.70) 48%,
			rgba(223,255,72,.62) 72%,
			rgba(120,231,255,.78)
		);

	background-size:260% 100%;

	-webkit-mask:
		linear-gradient(#000 0 0) content-box,
		linear-gradient(#000 0 0);

	-webkit-mask-composite:xor;
	mask-composite:exclude;

	opacity:.38;
	pointer-events:none;

	animation:bpSharedNavFlow 8s linear infinite;
}

body .bp-shared-nav:after{
	position:absolute;
	z-index:-2;
	left:10%;
	right:10%;
	bottom:-18px;

	height:34px;

	content:"";

	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(102,87,255,.26),
			rgba(120,231,255,.16),
			rgba(223,255,72,.12),
			transparent
		);

	filter:blur(18px);
	opacity:.45;
	pointer-events:none;
}

.bp-shared-nav .bp-brand{
	display:flex!important;
	align-items:center!important;
	gap:15px!important;

	font-weight:900!important;
	cursor:pointer;
}

.bp-shared-nav .bp-logo-tile{
	width:112px!important;
	height:38px!important;
	flex:0 0 112px!important;

	display:flex!important;
	align-items:center!important;
}

.bp-shared-nav .bp-logo-tile img{
	display:block!important;

	width:100%!important;
	height:100%!important;

	object-fit:contain!important;
	object-position:left center!important;

	filter:drop-shadow(0 1px 10px rgba(0,0,0,.48))!important;
}

.bp-shared-nav .bp-brand-engine{
	font-size:10px!important;
	font-weight:700!important;
	opacity:.64!important;

	letter-spacing:.13em!important;

	color:#fff!important;
	white-space:nowrap!important;
}

.bp-shared-nav .bp-navlinks{
	display:flex!important;
	align-items:center!important;
	gap:8px!important;
}

.bp-shared-nav .bp-navlinks a{
	position:relative!important;

	display:inline-flex!important;
	align-items:center!important;

	padding:11px 15px!important;

	border-radius:13px!important;

	text-decoration:none!important;

	color:#fff!important;

	font:800 12px/1 Arial,Helvetica,sans-serif!important;
	letter-spacing:.12em!important;
	text-transform:uppercase!important;

	opacity:.88!important;

	text-shadow:0 1px 12px rgba(0,0,0,.46)!important;

	transition:
		opacity .2s ease,
		background .2s ease,
		transform .2s ease!important;
}

.bp-shared-nav .bp-navlinks a:hover{
	opacity:1!important;
	background:rgba(255,255,255,.075)!important;

	box-shadow:
		inset 0 0 0 1px rgba(255,255,255,.06)!important;

	transform:translateY(-1px)!important;
}

.bp-shared-nav .bp-nav-back{
	min-width:38px;
	justify-content:center;
	padding-left:10px!important;
	padding-right:10px!important;
	font-size:17px!important;
}

.bp-shared-nav .bp-nav-contact{
	padding-right:17px!important;

	background:rgba(5,6,10,.16)!important;

	box-shadow:
		inset 0 0 0 1px rgba(255,255,255,.14)!important;
}

.bp-shared-nav .bp-nav-contact:before{
	position:relative;

	display:inline-block;

	width:6px;
	height:6px;

	margin-right:8px;

	content:"";

	border-radius:50%;

	background:var(--signal);

	box-shadow:
		0 0 14px rgba(223,255,72,.65);
}

.bp-shared-nav .bp-lang{
	margin-left:2px!important;

	background:rgba(5,6,10,.13)!important;

	border:
		1px solid rgba(255,255,255,.24)!important;
}

.bp-shared-nav .bp-nav-top{
	display:none!important;
}

.bp-shared-nav.bp-nav-scrolled{
	top:8px!important;

	padding:7px 13px 7px 16px!important;

	border-radius:16px!important;

	background:
		radial-gradient(circle at 12% 50%,rgba(120,231,255,.04),transparent 22%),
		radial-gradient(circle at 88% 50%,rgba(223,255,72,.025),transparent 24%),
		linear-gradient(180deg,rgba(10,11,18,.50),rgba(5,6,10,.36))!important;

	box-shadow:
		0 12px 42px rgba(0,0,0,.18),
		0 0 0 1px rgba(255,255,255,.065),
		inset 0 1px 0 rgba(255,255,255,.06)!important;
}

.bp-shared-nav.bp-nav-scrolled:before{
	opacity:.26;
	border-radius:16px;
}

.bp-shared-nav.bp-nav-scrolled:after{
	opacity:.24;
}

.bp-shared-nav.bp-nav-scrolled .bp-logo-tile{
	width:90px!important;
	height:29px!important;
	flex-basis:90px!important;
}

.bp-shared-nav.bp-nav-scrolled .bp-brand-engine{
	font-size:9px!important;
	opacity:.38!important;
}

.bp-shared-nav.bp-nav-scrolled .bp-navlinks a{
	padding:8px 12px!important;
	font-size:11px!important;
}

.bp-shared-nav.bp-nav-scrolled .bp-nav-top{
	display:inline-flex!important;
}

.bp-shared-nav.bp-nav-light{
	color:#090B11!important;

	background:
		radial-gradient(circle at 12% 50%,rgba(102,87,255,.045),transparent 24%),
		radial-gradient(circle at 88% 50%,rgba(223,255,72,.025),transparent 25%),
		linear-gradient(180deg,rgba(255,255,255,.56),rgba(246,248,251,.40))!important;

	box-shadow:
		0 14px 44px rgba(18,22,32,.10),
		0 0 0 1px rgba(9,11,17,.09),
		inset 0 1px 0 rgba(255,255,255,.48)!important;
}

.bp-shared-nav.bp-nav-light .bp-logo-tile img{
	filter:brightness(0) saturate(100%)!important;
}

.bp-shared-nav.bp-nav-light .bp-brand-engine,
.bp-shared-nav.bp-nav-light .bp-navlinks a{
	color:#090B11!important;
	text-shadow:none!important;
}

.bp-shared-nav.bp-nav-light .bp-navlinks a{
	opacity:.74!important;
}

.bp-shared-nav.bp-nav-light .bp-navlinks a:hover{
	background:rgba(9,11,17,.065)!important;
}

.bp-shared-nav.bp-nav-light .bp-nav-contact{
	background:rgba(102,87,255,.08)!important;

	box-shadow:
		inset 0 0 0 1px rgba(102,87,255,.14)!important;
}

.bp-shared-nav.bp-nav-light .bp-lang{
	background:rgba(255,255,255,.28)!important;

	border-color:
		rgba(9,11,17,.14)!important;
}

@keyframes bpSharedNavFlow{
	to{
		background-position:260% 0;
	}
}


/* =========================================================
   WORDPRESS ADMIN BAR
   ========================================================= */

:root{
	--bp-admin-offset:0px;
}

body.admin-bar{
	--bp-admin-offset:32px;
}

body.admin-bar .bp-shared-nav{
	top:calc(var(--bp-admin-offset) + 14px)!important;
}

body.admin-bar .bp-shared-nav.bp-nav-scrolled{
	top:calc(var(--bp-admin-offset) + 8px)!important;
}

@media(max-width:782px){
	body.admin-bar{
		--bp-admin-offset:46px;
	}
}


/* =========================================================
   MOBILE NAV
   ========================================================= */

@media(max-width:900px){

	body .bp-shared-nav{
		top:10px!important;
		width:calc(100vw - 20px)!important;

		padding:10px 12px!important;

		border-radius:17px!important;
	}

	.bp-shared-nav:before{
		border-radius:17px!important;
	}

	.bp-shared-nav .bp-logo-tile{
		width:88px!important;
		height:30px!important;
		flex-basis:88px!important;
	}

	.bp-shared-nav .bp-navlinks{
		gap:4px!important;
	}

	body.admin-bar .bp-shared-nav{
		top:calc(var(--bp-admin-offset) + 10px)!important;
	}
}

@media(max-width:900px) and (min-width:761px){

	.bp-shared-nav .bp-navlinks a:not(.bp-lang):not(.bp-nav-back){
		display:none!important;
	}

	.bp-shared-nav .bp-navlinks .bp-nav-back{
		display:inline-flex!important;
	}
}

@media(max-width:760px){

	.bp-shared-nav .bp-brand-engine{
		display:none!important;
	}

	.bp-shared-nav .bp-navlinks{
		gap:1px!important;
	}

	.bp-shared-nav .bp-navlinks a{
		display:inline-flex!important;

		padding:8px 6px!important;

		font-size:9px!important;
		letter-spacing:.04em!important;

		white-space:nowrap!important;
	}

	.bp-shared-nav .bp-nav-contact:before{
		display:none!important;
	}
}

@media(max-width:560px){

	body .bp-shared-nav{
		top:8px!important;
		width:calc(100vw - 14px)!important;

		padding:8px 9px!important;

		border-radius:15px!important;
	}

	.bp-shared-nav:before{
		border-radius:15px!important;
	}

	.bp-shared-nav .bp-logo-tile{
		width:64px!important;
		height:24px!important;
		flex-basis:64px!important;
	}

	.bp-shared-nav .bp-navlinks a{
		padding:7px 4px!important;
		font-size:8px!important;
	}

	.bp-shared-nav .bp-nav-back{
		font-size:14px!important;
	}

	.bp-shared-nav.bp-nav-scrolled{
		top:6px!important;

		padding:6px 8px!important;

		border-radius:13px!important;
	}

	.bp-shared-nav.bp-nav-scrolled .bp-logo-tile{
		width:68px!important;
		height:24px!important;
		flex-basis:68px!important;
	}

	body.admin-bar .bp-shared-nav{
		top:calc(var(--bp-admin-offset) + 8px)!important;
	}

	body.admin-bar .bp-shared-nav.bp-nav-scrolled{
		top:calc(var(--bp-admin-offset) + 6px)!important;
	}
}


/* =========================================================
   BLUE PAD — GLOBAL FOOTER
   ========================================================= */

#Content footer:not(.bp-site-footer){
	display:none!important;
}

.bp-site-footer{
	--signal:#DFFF48;

	position:relative;

	overflow:hidden;

	margin:0!important;

	padding:
		clamp(58px,7vw,100px)
		clamp(22px,5vw,82px)
		34px;

	background:
		radial-gradient(circle at 82% 18%,rgba(102,87,255,.40),transparent 31%),
		radial-gradient(circle at 16% 86%,rgba(223,255,72,.07),transparent 24%),
		#05060A;

	color:#fff;

	border-top:
		1px solid rgba(223,255,72,.26);

	font-family:
		Arial,Helvetica,sans-serif;

	text-align:left;
}

.bp-site-footer:before{
	position:absolute;

	right:-.04em;
	top:-.24em;

	content:"PLAY";

	font-size:min(29vw,430px);
	font-weight:900;

	letter-spacing:-.08em;

	color:rgba(255,255,255,.035);

	pointer-events:none;
}

.bp-site-footer *{
	box-sizing:border-box;
}

.bp-footer-top{
	position:relative;
	z-index:1;

	display:grid;

	grid-template-columns:
		minmax(0,1fr) auto;

	gap:44px;

	align-items:end;
}

.bp-footer-kicker{
	margin-bottom:20px;

	font:900 10px/1.3 monospace;

	letter-spacing:.18em;

	color:var(--signal);

	text-transform:uppercase;
}

.bp-site-footer h3{
	max-width:1080px;

	margin:0!important;

	font-size:clamp(48px,7.7vw,124px)!important;
	line-height:.82!important;

	letter-spacing:-.065em!important;

	color:#fff!important;

	text-transform:uppercase;
}

.bp-footer-email{
	display:inline-flex;

	margin-top:28px;

	padding-bottom:4px;

	font:
		800 clamp(18px,1.8vw,26px)/1.1 Arial,sans-serif;

	letter-spacing:-.02em;

	color:#fff!important;

	text-decoration:none!important;

	border-bottom:
		1px solid rgba(255,255,255,.28);
}

.bp-footer-email:hover{
	color:var(--signal)!important;
	border-color:var(--signal);
}

.bp-footer-cta{
	display:grid!important;

	place-items:center;

	width:150px;
	aspect-ratio:1;

	border-radius:50%;

	background:var(--signal);

	color:#05070b!important;

	text-decoration:none!important;
	text-align:center;

	font:900 11px/1.25 monospace;

	letter-spacing:.10em;

	text-transform:uppercase;

	transition:
		transform .25s ease,
		box-shadow .25s ease;
}

.bp-footer-cta:hover{
	transform:translateY(-4px);

	box-shadow:
		0 18px 50px rgba(223,255,72,.18);
}

.bp-footer-rule{
	height:1px;

	margin:
		clamp(48px,6vw,78px)
		0 30px;

	background:
		rgba(255,255,255,.16);
}

.bp-footer-bottom{
	position:relative;
	z-index:1;

	display:grid;

	grid-template-columns:
		minmax(240px,1.25fr)
		.7fr
		1fr
		.45fr;

	gap:34px;

	align-items:start;
}

.bp-footer-brand{
	display:flex;

	gap:15px;

	align-items:center;
}

.bp-footer-logo{
	width:58px;
	height:58px;

	display:grid;

	place-items:center;

	border-radius:14px;

	overflow:hidden;

	background:#fff;
}

.bp-footer-logo img{
	width:100%;
	height:100%;

	object-fit:contain;
}

.bp-footer-brand strong{
	display:block;

	font-size:18px;

	letter-spacing:-.02em;

	color:#fff;
}

.bp-footer-brand span{
	display:block;

	margin-top:5px;

	font:800 9px/1.4 monospace;

	letter-spacing:.13em;

	color:rgba(255,255,255,.44);

	text-transform:uppercase;
}

.bp-footer-col{
	display:flex;

	flex-direction:column;

	gap:9px;
}

.bp-footer-col b{
	margin-bottom:5px;

	font:900 9px/1 monospace;

	letter-spacing:.16em;

	color:rgba(255,255,255,.38);

	text-transform:uppercase;
}

.bp-footer-col a,
.bp-footer-col span{
	font-size:14px;
	line-height:1.35;

	color:rgba(255,255,255,.78)!important;

	text-decoration:none!important;
}

.bp-footer-col a:hover{
	color:var(--signal)!important;
}

.bp-footer-lang{
	display:inline-flex!important;

	align-self:flex-start;

	padding:9px 11px;

	border:
		1px solid rgba(255,255,255,.22);

	border-radius:999px;

	font:900 10px/1 monospace!important;

	letter-spacing:.12em;

	color:#fff!important;
}

.bp-footer-copy{
	position:relative;
	z-index:1;

	display:flex;

	justify-content:space-between;

	gap:20px;

	margin-top:42px;

	padding-top:18px;

	border-top:
		1px solid rgba(255,255,255,.10);

	font:800 9px/1.4 monospace;

	letter-spacing:.12em;

	color:rgba(255,255,255,.35);

	text-transform:uppercase;
}

@media(max-width:900px){

	.bp-footer-top{
		grid-template-columns:1fr;
	}

	.bp-footer-cta{
		width:122px;
	}

	.bp-footer-bottom{
		grid-template-columns:1fr 1fr;
	}
}

@media(max-width:640px){

	.bp-site-footer{
		padding-left:20px;
		padding-right:20px;
	}

	.bp-footer-bottom{
		grid-template-columns:1fr;
		gap:28px;
	}

	.bp-footer-copy{
		flex-direction:column;
	}

	.bp-footer-logo{
		width:50px;
		height:50px;
	}

	.bp-site-footer h3{
		font-size:
			clamp(46px,15vw,82px)!important;
	}
}


/* Accessibility / performance */
@media(prefers-reduced-motion:reduce){

	.bp-shared-nav,
	.bp-shared-nav *,
	.bp-footer-cta{
		transition:none!important;
	}

	.bp-shared-nav:before{
		animation:none!important;
	}
}
