/* !-- Header -- */
	/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
header {
	background: url(../img/interface/header-background.png) 50% 0 no-repeat;
	background-size: auto !important;
	position: relative;
	z-index: 500;
}
header .page-width {
	height: 98px;
	-webkit-transition: height .25s ease-in-out;
	-moz-transition: height .25s ease-in-out;
	-ms-transition: height .25s ease-in-out;
	-o-transition: height .25s ease-in-out;
	transition: height .25s ease-in-out;
	z-index: 500;
}

#page.snap-menu header { height: 50px; position: fixed; top: 0; right: 0; left: 0; background: url("../img/interface/page-background.jpg") 50% 0 repeat-x; background-size: auto auto !important; }
#page.snap-menu header .page-width { height: 50px; }

@media (max-width: 1023px) {
	header .page-width {
		height: 70px;
	}
}

@media (max-width: 480px) {
	header .page-width {
		height: 50px;
	}
}

@media (max-width: 1023px) {
	header, header .page-width {
		position: fixed; top: 0; left: 0; right: 0; background: url("../img/interface/page-background.jpg") 50% 0 repeat-x; background-size: auto auto !important;
		-webkit-transition: left .25s ease-in-out; 
		-moz-transition: left .25s ease-in-out; 
		transition: left .25s ease-in-out;
		-webkit-transition: right .25s ease-in-out; 
		-moz-transition: right .25s ease-in-out; 
		transition: right .25s ease-in-out;
	}
	#viewport.mobile-menu-opened header, #viewport.mobile-menu-opened header .page-width { left: 384px; right: -384px; }
}
@media (max-width: 479px) {
	#viewport.mobile-menu-opened header, #viewport.mobile-menu-opened header .page-width { left: 244px; right: -244px; }
}

header:after {
	content: "";
	height: 8px;
	position: absolute;
	right: 0;
	bottom: -8px;
	left: 0;
	background: -moz-linear-gradient(top, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0,0,0,0.4)), color-stop(100%, rgba(0,0,0,0)));
	background: -webkit-linear-gradient(top, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0) 100%);
	background: -o-linear-gradient(top, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0) 100%);
	background: -ms-linear-gradient(top, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0) 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0) 100%);
}

@media (max-width: 1023px) {
	header:after {
		top: 70px;
		bottom: auto;
		z-index:10;
	}
}

@media (max-width: 480px) {
	header:after {
		top: 50px;
	}
}
header .home {
	text-indent: -999px;
	width: 221px;
	height: 74px;
	margin-top: -37px;
	outline: 0;
	background: url(../img/interface/dungeons-and-dragons-logo.png) 0 0 no-repeat;
	background-size: 200% auto !important;
	overflow: hidden;
	display: block;
	position: absolute;
	top: 50%;
	left: 0px;
	-webkit-transition-property: width, height, left, margin-top, margin-left;
	-webkit-transition-duration: .25s;
	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-property: width, height, left, margin-top, margin-left;
	-moz-transition-duration: .25s;
	-moz-transition-timing-function: ease-in-out;
	-ms-transition-property: width, height, left, margin-top, margin-left;
	-ms-transition-duration: .25s;
	-ms-transition-timing-function: ease-in-out;
	-o-transition-property: width, height, left, margin-top, margin-left;
	-o-transition-duration: .25s;
	-o-transition-timing-function: ease-in-out;
	transition-property: width, height, left, margin-top, margin-left;
	transition-duration: .25s;
	transition-timing-function: ease-in-out;
}
header .home:hover, header .home:focus { background-position: 100% 0; }

#page.snap-menu header .home { width: 124px; height: 50px; top: 0; margin-top: 4px; }
#page.snap-menu header .home span { background-image: url("../img/interface/dungeons-and-dragons-logo.png"); }

@media (max-width: 1919px) {
	header .home {
		width: 176px;
		height: 62px;
		margin-top: -24px;
		left: 0;
	}
}

@media (max-width: 1200px) {
	header .home {
		left: 5px;
	}
}

@media (max-width: 1023px) {
	header .home {
		width: 156px;
		height: 52px;
		margin-top: 0;
		margin-left: -87px;
		top: 10px;
		left: 50%;
		-webkit-transition-duration: 0s;
		-moz-transition-duration: 0s;
		-ms-transition-duration: 0s;
		-o-transition-duration: 0s;
		transition-duration: 0s;
	}
}

@media (max-width: 480px) {
	header .home {
		width: 119px;
		height: 40px;
		margin-left: -59px;
		top: 5px;
	}
}
header .utils {
	float:right;
	position:relative;
}
#page.snap-menu header .utils { display: none; }

@media (max-width: 1023px) {
	header .utils { position: absolute; top: 0; right: 0; }
}
header .utils a.locator {
	font-size: 1.2rem;
	color: #000;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	margin: 0;
	padding: 9px 0 9px 36px;
	background: url(../img/interface/store-locator-icon.png) 0px 6px no-repeat;
	background-size: auto !important;
	float: left;
}
header .utils a.locator:hover, header .utils a.locator:focus {
	color: #9d0a0e;
	background-position: 0px -27px;
}
.node-type-fiction .product_catalog.details header .utils a.locator { display: none; }

@media (max-width: 1023px) {
	header .utils a.locator {
		display: none;
	}
}
header .utils #search-form-mini {
	margin: 2px 30px 0;
	padding: 2px;
	background: #c1bead;
	float: left;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
}
@media (max-width: 1023px) {
	header .utils #search-form-mini {
		margin: 0;
		right:0;
		left:auto;
		top:0;
		position:absolute;
		background-color:transparent;
	}
}

header .utils #search-form-mini .select-wrapper {
	width: 70px;
	background: url(../img/interface/drop-down-arrow-searchbar.png) 100% 50% no-repeat #333333;
	background-size: auto !important;
	float: left;
	overflow: hidden;
	-webkit-border-radius: 3px 0 0 3px;
	-moz-border-radius: 3px 0 0 3px;
	-ms-border-radius: 3px 0 0 3px;
	-o-border-radius: 3px 0 0 3px;
	border-radius: 3px 0 0 3px;
}
header .utils #search-form-mini .select-wrapper select {
	color: #fff;
	font-family: inherit;
	text-transform: uppercase;
	width: 120px;
	margin: 0;
	padding: 6px 24px 7px 12px;
	border: 0;
	outline: 0;
	background: transparent;
	display: inline-block;
	cursor: pointer;
	-webkit-appearance: none;
}
header .utils #search-form-mini input {
	color: #9f9d99;
	width: 125px;
	height: 31px;
	margin: 0;
	padding: 0 5px 0 25px;
	background: url(../img/interface/search-field-icon.png) 4px 50% no-repeat #f5f4ef;
	background-size: auto !important;
	border: 1px solid #a9a8a4;
	outline: 0;
	-webkit-border-radius: 0 3px 3px 0;
	-webkit-box-shadow: 0 0 3px #a9a8a4 inset;
	-moz-border-radius: 0 3px 3px 0;
	-moz-box-shadow: 0 0 3px #a9a8a4 inset;
	-ms-border-radius: 0 3px 3px 0;
	-ms-box-shadow: 0 0 3px #a9a8a4 inset;
	-o-border-radius: 0 3px 3px 0;
	-o-box-shadow: 0 0 3px #a9a8a4 inset;
	border-radius: 0 3px 3px 0;
	box-shadow: 0 0 3px #a9a8a4 inset;
}

@media (max-width: 1023px) {
	header .utils #search-form-mini input { background-image:none; padding-left:5px; }
	header .utils #search-form-mini .form { display: none; position:absolute; top:65px; right:0; padding:5px; background-color:#333; z-index:99; }
}
@media (max-width: 480px) {
	header .utils #search-form-mini .form { top:45px; }
}
header .utils #search-form-button {
	text-indent: -999px;
	width: 76px;
	height: 70px;
	outline: 0;
	background: url(../img/interface/header-search-button.png) 50% 50% no-repeat;
	background-size: auto !important;
	position: relative;
	top: 0;
	display: none;
	overflow: hidden;
}
header .utils #search-form-button:before, header .utils #search-form-button:after {
	content: "";
	width: 1px;
	height: 70px;
	margin-top: -35px;
	background: url(../img/interface/menu-separator.png) 0 50% no-repeat;
	background-size: auto !important;
	position: absolute;
	top: 50%;
}
@media ( max-width: 1023px ) {
	header .utils #search-form-button:before, header .utils #search-form-button:after { display: none; }
}
header .utils #search-form-button:before {
	left: 0;
}
header .utils #search-form-button:after {
	right: 0;
}

@media (max-width: 1023px) {
	header .utils #search-form-button {
		display: block;
	}
}

@media (max-width: 480px) {
	header .utils #search-form-button {
		height: 45px;
		width: 60px;

	}
}


/*------------- Social media --------------------*/

header .social-medias {
	float: left;
	position:relative;
}
header .social-medias a.twitter:before {
	content: ""; position: absolute; top: 5px; left:-10px; bottom: 0;  width:1px;
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(50%,rgba(0,0,0,1)), color-stop(100%,rgba(0,0,0,0))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 50%,rgba(0,0,0,0) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 50%,rgba(0,0,0,0) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 50%,rgba(0,0,0,0) 100%); /* IE10+ */
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 50%,rgba(0,0,0,0) 100%); /* W3C */
}


@media (max-width: 1023px) {
	header .social-medias {
		display: none;
	}
}
#sign-in {
	position: absolute;
	right: 5px;
	bottom: 8px;
	overflow: hidden;
	-webkit-transition-property: right, bottom;
	-webkit-transition-duration: .25s;
	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-property: right, bottom;
	-moz-transition-duration: .25s;
	-moz-transition-timing-function: ease-in-out;
	-ms-transition-property: right, bottom;
	-ms-transition-duration: .25s;
	-ms-transition-timing-function: ease-in-out;
	-o-transition-property: right, bottom;
	-o-transition-duration: .25s;
	-o-transition-timing-function: ease-in-out;
	transition-property: right, bottom;
	transition-duration: .25s;
	transition-timing-function: ease-in-out;
}

@media (max-width: 1023px) {
	#sign-in {
		display:none;
		top: 15px;
		right: 20px;
		bottom: auto;
	}
}

@media (max-width: 480px) {
	#sign-in {
		top: 7px;
	}
}

#sign-in button {
	color: #fff;
	text-transform: uppercase;
	font-size: 1.7rem;
	font-weight: 700;
	margin: 0;
	padding: 10px 50px 10px 10px;
	border: 0;
	background: url(../img/interface/sign-in-icon.png) 100% 50% no-repeat #333333;
	background-size: auto !important;
	display: inline-block;
	cursor: pointer;
}
#sign-in button:hover, #sign-in button:focus {
	background-color: #9d0a0e;
}

@media (max-width: 480px) {
	#sign-in button {
		text-indent: -999px;
		padding: 0;
		width: 43px;
		height: 37px;
	}
}
