
body, footer.main_footer {
	background: #111;
	color: #fff;
	font-family: 'Circular', "apercu", -apple-system, system, sans-serif;
	font-size: 18px;
}

body.nav_active {
	position: fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
}
@media (min-width: 668px) {
	body.nav_active {
		position: static;
	}
}

p {
	margin: 0;
}

.bg_pillar {
	position: absolute;
	top: -100px;
	left: 0;
	right: 0;
	bottom: 0;
	background: #000;
	margin: 0 auto;
	z-index: -1;
}


footer.main_footer a, footer.main_footer a:visited, footer.main_footer a:active {
	color: #fff;
}

#content a, a:hover, a:active, a:visited {
	color: #fff;
	border-bottom: 1px solid #fff;
}

#content a:hover {
	border-bottom: none;
}

#content a.button, nav a.button {
	border-radius: 10vw;
	border: transparent;
	padding: 15px 25px;
	font-weight: bold;
	color: #fff;
	background: #000;
	display: block;
}

#content a.button:hover, nav a.button:hover {
	background: transparent;
	color: #000 !important;
}

.gradient_wrap {
	border-radius: 10vw;
	display: block;
	padding: 2px;
	background: #08bbad; /* Old browsers */
	background: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/ValveIndex_gradient_headset.png') center center;
	background-size: 105%;
	transform: scaleX(-1);
}
body.page_index_controllers .gradient_wrap {
	background: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/ValveIndex_gradient_controllers.png') center center;
	background-size: 105%;
}
body.page_index_basestations .gradient_wrap {
	background: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/ValveIndex_gradient_bases.png') center center;
	background-size: 105%;
}
@media (min-width: 668px) {
	#content a.button, nav a.button {
		border-radius: 10vw;
	}
	.gradient_wrap {
		border-radius: 10vw;
	}
}

.gradient_wrap .button {
	transform: scaleX(-1);
}
@media (min-width: 820px) {
	#content a.button, nav a.button {
		border-radius: 35px;
		padding: 2px 15px;
	}
	.gradient_wrap {
		border-radius: 35px;
	}
}

@media (min-width: 668px) {
	header.main_header {
		min-height: 75px;
	}
}

header.main_header .logo {
	width: calc( 45vw + 1% );
	position: relative;
	overflow: hidden;
}
@media (min-width: 668px) {
	header.main_header .logo,
	footer.main_footer .logo {
		width: 30vw;
	}
}
@media (min-width: 820px) {
	header.main_header .logo,
	footer.main_footer .logo {
		width: 252px;
		max-width: 300px;
		position: relative;
	}
}

footer.main_footer .logo {
	width: 75px;
}
footer.main_footer .logo img {
	width: 100%;
}

header.main_header .logo .logo_bg_wrapper {
	position: absolute;
	top: 1px;
	left: 1px;
	right: 1px;
	bottom: 1px;
	overflow: hidden;
}
header.main_header .logo .logo_bg {
	background-color: rgb(29,188,177);
	background-image: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/ValveIndex_gradient.png');
	background-position: center center;
	background-size: 100% 100%;
	position: absolute;
	width: 100%;
	height: 400%;
}
body.page_index_headset header.main_header .logo .logo_bg {
	 background: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/logo_gradient_headset.png');
	background-size: 100% 100%;
}
body.page_index_controllers header.main_header .logo .logo_bg {
	background: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/logo_gradient_controllers.png');
	background-size: 100% 100%;
}
body.page_index_basestations header.main_header .logo .logo_bg {
	background: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/logo_gradient_bases.png');
	background-size: 100% 100%;
}

header.main_header .logo a,
header.main_header .logo a img {
	display: block;
	position: relative;
	z-index: 9;
}

header.main_header .nav_toggle {
	background: transparent;
	border: none;
	outline: none;
	background-image: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/navBurger.png');
	background-repeat: no-repeat;
	background-size: 100% 100%;
	padding: 0;
	text-indent: -9999px;
	height: 7vw;
	width: 7vw;
}
@media (min-width: 668px) {
	header.main_header .nav_toggle {
		height: 4vw;
		width: 4vw;
	}
}
@media (min-width: 820px) {
	header.main_header .nav_toggle {
		display: none;
	}
}

header.main_header .nav_toggle.active {
	background-image: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/navX.png');
}

header.main_header .top_nav {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin: 10px 5vw 10px;
	align-items: center;
	position: relative;
}
@media (min-width: 820px) {
	header.main_header .top_nav {
		margin: 10px 80px;
	}
}

header.main_header .top_nav nav.nav {
	display: none;
}
@media (max-width: 819px) {
	header.main_header .top_nav nav.nav.active {
		display: block;
		position: fixed;
		top:75px;
		bottom:0;
		left:0;
		right:0;
		background: #000;
		color: #fff;
		z-index: 999;
	}
}

@media (min-width: 820px) {
	header.main_header .top_nav nav.nav {
		align-self: center;
		width: 100%;
		display: block;
		position: relative;
	}
}



header.main_header .top_nav nav.nav ul {
	list-style: none;
	padding: 15vh 0 0;
	margin: 0;
}
@media (min-width: 820px) {
	header.main_header .top_nav nav.nav ul {
		display: flex;
		flex-direction: row;
		justify-content: flex-end;
		padding: 0;
		align-items: center;
		margin-top: 5px;
	}
}
@media (min-width: 1200px) {
	header.main_header .top_nav nav.nav ul {
		margin-top: 0;
	}
}

header.main_header .top_nav nav.nav ul li {
	font-size: 6vw;
	text-align: left;
	margin-top: 5vw;
	margin-left: 5vw;
}
@media (min-width: 820px) {
	header.main_header .top_nav nav.nav ul li {
		display: inline-block;
		margin: 0 2vw 0 0;
		font-size: 14px;
	}
}
@media (min-width: 1200px) {
	header.main_header .top_nav nav.nav ul li {
		font-size: 18px;
		margin-right: 40px;
	}
}

@media (min-width: 1200px) {
	header.main_header .top_nav.nav ul li {
		font-size: 18px;
	}

}

header.main_header .top_nav nav.nav ul li.button_wrapper{
	position: absolute;
	bottom: 5vw;
	left: 28vw;
	right: 28vw;
	text-align: center;
	margin: 0;
	font-size: 5vw;
}
@media (min-width: 668px) {
	header.main_header .top_nav nav.nav ul li.button_wrapper {
		font-size: 3vw;
	}
}
@media (min-width: 820px) {
	header.main_header .top_nav nav.nav ul li.button_wrapper {
		position: static;
		font-size: 14px;
	}
}
@media (min-width: 1200px) {
	header.main_header .top_nav nav.nav ul li.button_wrapper {
		font-size: 18px;
	}
}

@media (min-width: 820px) {
	footer.main_footer .index_core_nav {
		font-size: 14px;
	}
}
footer.main_footer .index_core_nav > li:first-of-type {
	margin-top: 0;
}

.top_nav nav.nav ul li a {
	color: #fff;
	font-weight: bold;
}

#content > section.hero {
	position: relative;
}

#content > section.image {
	min-height: 40vw;
}
@media (min-width: 668px) {
	#content > section.image {
		min-height: 300px;
	}
}

#content > section.section_background_video {
	min-height: 40vw;
}
@media (min-width: 1360px) {
	#content > section.section_background_video {
		min-height: 573px;
	}
}

#content > section.section_background_video video {
	display: block;
	margin: -1px 0;
	width: 100%;
}

.hero .hero_content {
	color: #fff;
	display: inline-block;
	position: absolute;
	bottom: 5vw;
	top: auto;
	left: 5vw;
	right: auto;
	padding: 0;
}
@media (min-width: 820px) {
	.hero .hero_content {
		bottom: 50px;
		top: auto;
		left: 80px;
		right: 80px;
	}
}

.hero .cta h1 {
	width: 50%;
}
@media (min-width: 820px) {
	.hero .cta h1 {
		width: auto;
	}
}

.hero .hero_content.black {
	color: #000;
}

.hero.hero_header .hero_content {
	bottom: auto;
	top: 5vw;
}
@media (min-width: 820px) {
	.hero .hero_content {
		bottom: 50px;
		top: auto;
	}
}

.hero.hero_header > div.button_wrapper {
	position: absolute;
	bottom: 50px;
	top: auto;
	text-align: center;
}

#content .hero.hero_header > div.button_wrapper .button {
	padding-left: 50px;
	padding-right: 50px;
}

.hero .cta h1 {
	margin: 0;
	line-height: 1;
}
@media (min-width: 820px) {
	.hero .cta h1 {
		margin: 0 0 10px;
	}
}

.hero .cta a {
	display: block;
}
.hero .cta p {
	margin: 0;
	line-height: 1;
	font-size: 32px;
}

#content > section.details.gradient_bg {
	padding: 5vw;
	margin:0 auto;
	background-image: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/ValveIndex_gradient_square.png?v2');
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: top right;
	color: #000;
}
@media (min-width: 820px) {
	#content > section.details.gradient_bg {
		padding: 80px;
		background-image: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/ValveIndex_gradient_horizontal.png?v2');
	}
}

#home_header.hero.hero_header .hero_content.cta {
	display: none;
}
#home_header_details .cta {
	color: #fff;
}
#home_header_details .section_inner_wrapper {
	display: block;
}
@media (min-width: 820px) {
	#home_header.hero.hero_header .hero_content.cta {
		//display: block;
	}
	#home_header_details .cta {
		//display: none;
	}
}

#content #home_headset_details, #content #headset_header_details {
	background-image: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/ValveIndex_gradient_headset.png?v2');
}

#content #home_controllers_details, #content #controllers_header_details {
	background-image: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/ValveIndex_gradient_controllers.png?v2');
}

#content #home_basestations_details, #content #basestations_header_details {
	background-image: url('https://cdn.fastly.steamstatic.com/valvesoftware/images/index/ValveIndex_gradient_bases.png?v2');
}

@media (min-width: 820px) {
	.details .section_inner_wrapper {
		display: flex;
	}
}

.details .section_inner_wrapper div {
	display: flex;
	align-items: center;
}


#content .details a.learn_more {
	color: #000;
	border-bottom: 1px solid #000;
	position: relative;
}
#content .details a.learn_more:hover {
	border-bottom: none;
}

.details a.learn_more:after {
	content: "›";
	position: absolute;
	right: -8px;
}

.details .details_title {
	font-size: 5.5vw;
	line-height: 1.2;
	margin: 0;
	font-weight: bold;
}
@media (min-width: 668px) {
	.details .details_title {
		font-size: 4vw;
	}
}
@media (min-width: 820px) {
	.details .details_title {
		font-size: 34px;
	}
}

#content > section.hero + section.full_bleed {
	margin-top: 0;
}

#home_headset h1,
#home_headset h1 a,
#headset_header h1,
.headset_features .feature h2,
.headset_features .narrative {
	color: rgb(29,188,177);
	border: none;
}

#content .headset_color,
#content .headset_article h1,
#content .headset_article h2 {
	color: rgb(29,188,177);
	border-color:  rgb(29,188,177);
}

#content .headset_article .byline {
	color: #999999;
	font-style: italic;
}

#home_controllers h1, #home_controllers h1 a, #controllers_header h1, .controllers_features .feature h2, .controllers_features .narrative {
	color: rgb(68,136,255);
	border: none;
}

#content .controllers_color,
#content .controllers_article h1,
#content .controllers_article h2 {
	color: rgb(68,136,255);
	border-color: rgb(68,136,255);
}

#home_basestations h1, #home_basestations h1 a, #basestations_header h1, .basestations_features .feature h2, .basestations_features .narrative {
	color: rgb(178,79,193);
	border: none;
}

#content .basestations_color,
#content .basestations_article h1,
#content .basestations_article h2  {
	color: rgb(178,79,193);
	border-color: rgb(178,79,193);
}


@media (max-width: 819px) {
	#content #index_home_steamvr {
		width: 60%;
		margin-bottom: 40px;
	}
}
@media (min-width: 820px) {
	#index_home_steamvr {
		display: flex;
		flex-direction: row;
		justify-content: space-evenly;
	}

	@supports (-ms-flow-from: true) { /* Edge only */
		#index_home_steamvr {
			justify-content: space-around;
		}
	}
}

@media (max-width: 819px) {
	.home_steamvr_description, .home_steamvr_description p {
		float: none;
	}

	.home_steamvr_logo {
		width: 50% !important;
		margin: 5vw auto 0 !important;
		float: none;
	}
}


#subfooter .section_inner_wrapper div {
	display: block;
}

#subfooter a.button {
	background: #000;
	border-color: #000;
	color: #fff;
	font-size: 5.5vw;
	font-weight: bold;
	padding: 3vw 15vw;
	display: inline-block;
	margin-top: 10vw;
}
@media (min-width: 668px) {
	#subfooter a.button {
		font-size: 3vw;
		padding: 2vw 8vw;
		float: right;
	}
}
@media (min-width: 820px) {
	#subfooter a.button {
		font-size: 20px;
		padding: 10px 30px;
		margin: 0;
	}
}

#subfooter a.button:hover {
	border: 2px solid #000;
}

#subfooter h3 {
	margin-bottom: 5vw;
}
@media (min-width: 820px) {

	#subfooter h3 {
		margin-bottom: 0;
	}
}

.features {
	display: block
}
@media (min-width: 820px) {
	.features {
		display: flex;
		flex-direction: row;
		justify-content: space-evenly;
	}
	@supports (-ms-flow-from: true) { /* Edge only */
		.features {
			justify-content: space-around;
		}
	}
}

.narrative {
	width: 80%;
	margin: 0 auto;
	font-size: 7vw;
}
@media (min-width: 820px) {
	.narrative {
		width: 87.5%;
		font-size: 26px;
	}
}
@media (min-width: 1200px) {
	.narrative {
		width: 80%;
		font-size: 26px;
	}
	@supports (-ms-flow-from: true) { /* Edge only */
		.narrative {
			width: 87.5%;
		}
	}
}

.narrative p {
	line-height: 1.2;
}
@media (min-width: 820px) {
	.narrative p {
		line-height: 1.4;
	}
}

.features .feature {
	width: 80%;
	margin: 0 auto;
}
@media (min-width: 820px) {
	.features .feature {
		width: 25%;
		margin: 0;
	}
	.dual .features .feature {
		width: 35%;
	}

	.dual .narrative {
		width: 80%;
	}
	@supports (-ms-flow-from: true) { /* Edge only */
		.dual .narrative {
			width: 85%;
		}
	}

}
@media (min-width: 1200px) {
	.features .feature {
		width: 20%;
	}
}

.features .feature .icon {
	width: 100%;
	margin-top: 40px;
}

.features .feature h2 {
	line-height: 1.2;
	font-size: 6vw;
	margin-top: 10vw;
}
@media (min-width: 820px) {
	.features .feature h2 {
		margin-top: 60px;
		font-size: 26px;
		min-height: 60px;
	}
}

#content > section.tech_specs, #content > section.steam_titles {
	padding: 5vw;
	margin: 0 auto;
	background: #fff;
	color: #000;
}

@media (min-width: 820px) {
	#content > section.tech_specs, #content > section.steam_titles {
		padding: 80px;
	}
}


#content > section.tech_specs {
	background: rgba(230,230,230,.9);
}


.tech_specs .specs .spec h2 {
	font-size: 18px;
}

.steam_titles h1 {
	font-size: 26px;
	font-weight: normal;
}

.games {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

.games .game {
	margin-top: 40px;
}

.games .game:nth-of-type(4n) {
	margin-right: 0;
}

.games .game h2 {
	margin-top: 10px;
	font-size: 20px;
	margin-bottom: 0;
	line-height: 1.2;
}

.games .game p {
	margin:0;
	font-size: 16px;
}

#content .games a, #content .games a:active, #content .games a:visited {
	color: #000;
}
#content .games a:hover {
	border-bottom: 1px solid #000;
}

.note {
	width: 87.5%;
	margin: 60px auto 0 !important;
	font-style: italic;
}

.dual .note {
	width: 80%;
}

/* Slick carousel */
#content .slick-dots {
	list-style: none;
	padding: 0;
	margin: 0 auto;
	display: flex;
	width: 200px;
	flex-direction: row;
	justify-content: center;
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
}

.slick-dots li button {
	opacity: 0.5;
	background: transparent;
	border: 1px solid #fff;
	outline: none;
	border-radius: 50%;
	width: 10px;
	height: 10px;
	text-indent: -9999px;
	margin: 0 5px;
}

.slick-dots li.slick-active button {
	background: #fff;
}

/* Header customizations */
#controllers_hwsw .cta h1 {
	width: 30%;
}

#basestations_lifestyle video {
	display: block;
}


@media (min-width: 668px) {
	#content .article,
	#content .articles_header,
	#content .articles_list {
		width: 82.37%;
		margin-left: 8.812%;
	}
}

#content .article h3 {
	font-size: 4vw;
}

@media (min-width: 1200px) {
	#content .article,
	#content .articles_header,
	#content .articles_list  {
		width: 64.746%;
		margin-left: 17.624%;
	}
}


@media (min-width: 820px) {
	#content .article h2 {
		font-size: 4vw;
		line-height: 1.2;
		margin-top: 40px;
	}
	#content .article h3 {
		font-size: 2.6vw;
	}
}
@media (min-width: 1200px) {
	#content .article h2 {
		font-size: 40px;
		line-height: 1.2;
	}
	#content .article h3 {
		font-size: 26px;
		line-height: 1.2;
	}
}

#content .article video {
	margin: 20px 0;
	display: inline-block;
}

#content .article p, #content .article ol, #content .article ul, #content .article li {
	margin: 0 0 20px;
}

#content .article ul, #content .article ol {
	padding-left: 1em;
}

#content .articles_list {
	margin-top: 50px;
}

#content .articles_list .article_link {
	margin-bottom: 10vw;
}
@media (min-width: 668px) {
	#content .articles_list .article_link {
		margin-bottom: 40px;
		display: flex;
		flex-direction: row;
		align-content: center;
		align-items: center;
	}

	#content .articles_list .article_link.has_hero > * {
		width: 50%;
	}
	#content .articles_list .article_link .hero {
		width: 40%;
		margin-right: 5%;
	}
}

#content .articles_list .article_link .hero a {
	text-decoration: none;
	border: none;
}

#content .articles_list .article_link h2 {
	font-size: 24px;
	text-align: left;
	margin-bottom: 0;
}

#content .articles_list .article_link h2 a {
	text-decoration: none;
	border: none;
}

#content .articles_list .article_link {
	font-size: 16px;
}

#content .articles_list .article_link p {
	margin-bottom: 20px;
}

#content .articles_list .article_link .read_more,
#content .articles_list .article_link .coming_soon {
	margin-top: 20px;
}

#content a.disabled {
	cursor: not-allowed;
	border: none;
}

#controllers_steam_titles a {
	color: #000000;
	border-bottom: 1px solid #000000;
}

.quote_attribution, .hero .cta .quote_attribution {
	font-size: 6vw;
	line-height: 1.0;
	margin: 2vw 0 0;
	font-weight: 900;
	letter-spacing: .02em;
	content-align: right;
}

@media (min-width: 668px) {
	.quote_attribution, .hero .cta .quote_attribution {
		font-size: 26px;
	}
}
	
.details .section_inner_wrapper div.attribute_right, div.attribute_right {
   display: block;
   text-align: right;
}
.details .section_inner_wrapper div.attribute_center, div.attribute_center {
	display: block;
	text-align: center;
}

.quote h1 {
	margin-top: 40px;
	margin-bottom: 10px;
	text-align: center;
	color: #fff;
}


	
.hero .attribute_right .quote_attribution {
   display: block;
   text-align: right;
}
	
.hero .attribute_left .quote_attribution {
   display: block;
   text-align: left;
}
	
/* Quotes size differences */

@media (max-width: 819px) {
	#controllers_buttons h1, #headset_audio h1 {
		font-size: 7vw;
	}
	#controllers_buttons .quote_attribution, #headset_audio .quote_attribution {
		font-size: 5vw;
	}
}

@media (min-width: 668px) {
	#home_header_details .quote h1 {
		font-size: 5.2vw;
		text-align: center;
		width: 100%;
	}
}

.article .caption {
	display: block;
	text-align: center;
	color: rgba(255,255,255, 0.7);
}
.article .caption:before {
	content: "";
}