/*---------------------------
			GENERAL
-----------------------------*/

@font-face {
  font-family: 'Open Sans';
  src: url("fonts/opensans.eot");
  src: url("fonts/opensans.eot?iefix") format("eot"), url("fonts/opensans.woff") format("woff"), url("fonts/opensans.ttf") format("truetype"), url("fonts/opensans.svg#open_sansregular") format("svg");
}

body {
	margin: 0px;
	padding: 0px;
	border: 0px;
	font-family: LucidaGrande,Helvetica,Arial,sans;
	
	min-width:1320px;
}

header .button{
	border-radius: 3px;
	border: 1px solid black;
	padding: 6px 18px;
	box-shadow:0px 1px 1px rgba(255,255,255,0.5) inset;
	width:auto;
  
	background: #c0580b;
	background: -moz-linear-gradient(top, #d6760f 0%, #aa3a07 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#d6760f), color-stop(100%,#aa3a07));
	background: -webkit-linear-gradient(top, #d6760f 0%,#aa3a07 100%);
	background: -o-linear-gradient(top, #d6760f 0%,#aa3a07 100%);
	background: -ms-linear-gradient(top, #d6760f 0%,#aa3a07 100%);
	background: linear-gradient(to bottom, #d6760f 0%,#aa3a07 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d6760f', endColorstr='#aa3a07',GradientType=0 );

	color: white !important;
	font-size: 14px;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.4);
	font-weight: normal;
	text-decoration:none;
}

header .button:hover {
	text-decoration:underline;
	cursor:pointer;
	
	background: #e57e10;
	background: -moz-linear-gradient(top, #e57e10 0%, #c24308 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e57e10), color-stop(100%,#c24308));
	background: -webkit-linear-gradient(top, #e57e10 0%,#c24308 100%);
	background: -o-linear-gradient(top, #e57e10 0%,#c24308 100%);
	background: -ms-linear-gradient(top, #e57e10 0%,#c24308 100%);
	background: linear-gradient(to bottom, #e57e10 0%,#c24308 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e57e10', endColorstr='#c24308',GradientType=0 );

}

iframe {
	border:1px solid #323232;
}

/*---------------------------
			HEADER
-----------------------------*/

header {
	background:#131313;
	color:#dfdfdf;
	text-shadow:1px 1px 0px black;
	position:relative;
	
	line-height:1.5em !important;
	font-family: 'Open Sans',LucidaGrande,Helvetica,Verdana,Arial,sans-serif !important;
	font-size:14px !important;
}

body > header {
	border-bottom:1px solid transparent;
}

header .left {
	float:left;
}

header .right{
	float:right;
}

header .button {
	height:auto;
}

/* ----- TOP -----*/

header .top {
	margin:0px auto;
	overflow:hidden;
	width:1200px;
	box-sizing:border-box;
	padding:10px 0;
}

header .top p {
	font-family: 'Open Sans',LucidaGrande,Helvetica,Verdana,Arial,sans-serif !important;
}

header.full-width .top, header.full-width .middle > div {
	width:100%;
}

header.full-width .top {
	padding-left:10px;
	box-sizing:border-box;
} 

.nikonians_top_logo  {
	color: transparent;
	text-indent: -9000px;
	height: 35px;
	width: 200px;
	margin:0;
	background: url("../images/logo2.png") no-repeat;
}

header p {
	margin:0 0 5px;
}

header .top .left p {
	font-size: 11px;
	line-height:16px;
	color: #707070;
}

header .top .right p {
	font-size: 11px;
	color:#a6a6a6;
	position:relative;
	top:4px;
}

header .top .right p span {
	color:#f5802a;
	font-size:15px;
	font-weight:bold;
	cursor:pointer;
}

header .top .right p span:hover {
	text-decoration:underline;
}

/*FULL WIDTH HEADER -------------------*/

header.full-width nav {
	margin-left:3px;
} 

header.full-width .after_login, header.full-width .before_login, header.full-width .middle .right {
	margin-right:10px;
}

/*----- LOGIN / SIGN UP -----*/

.before_login {
	text-align:right;
	width:230px;
	margin-top:4px;
}

.before_login a.button{
	display:inline-block;
	padding:8px 20px;
}

.login_form {
	display:none;
	position:absolute;
	background:#383838;
	border:1px solid #494949;
	box-shadow:0px 0px 2px black;
	padding:8px 5px 4px 5px;
	width:220px;
	text-align:left;
	z-index:10;
}

.login_form label {
	font-size:12px;
	margin-left:5px;
}

.login_form input[type="text"] {
	margin-bottom:6px;
}

.login_form input[type="text"], 
.login_form input[type="password"] {
	width:196px;
	outline:0;
}

.login_form span {
	float:left;
	margin-top:4px;
}

.login_form a {
	font-size: 11px;
	color: #9E9E9E !important;
	text-decoration:none;
	display:table-cell;
	height:30px;
	vertical-align:middle;
}

.login_form a:hover {
	text-decoration:underline;
}

.login_form input[type="submit"].button {
	font-size:12px;
	padding: 5px 10px;
	cursor:pointer;
	float:right;
	margin-top:5px;
}

.login_form input[type="submit"].button:hover {
	text-decoration:underline;
}

header input[type="text"], 
header input[type="password"] {
	background:#202020;
	border-radius:20px;
	border:1px solid #494949;
	color:#ccc;
	padding:5px 11px;
	font-size:12px;
	box-shadow: 1px 1px 1px black inset;
	margin-bottom:3px;
	width:145px;;
}

header input[type="text"]:hover, 
header input[type="password"]:hover {
	border:1px solid #666;
}

header input:focus {
	outline:0;
}

/*----- LOGGED IN -----*/

.after_login {
	margin-top:6px;
	text-align:right;
}

.after_login a {
	color:#f5802a;
	text-decoration:none;
	padding:5px;
}

.after_login span, .after_login a {
	font-size:12px;
	font-weight:bold;
}

.after_login a:hover {
	text-decoration:underline;
}

.after_login a.nickname {
	font-size:18px;
	font-weight:bold;
	padding:0;
	display:inline-block;
	margin-bottom:3px;
}

/*----- MIDDLE -----*/

header .middle {
	background:#383838;
	border-top:1px solid #494949;
	border-bottom:1px solid #494949;
	box-shadow:0px 0px 2px black;
}

header .middle > div {
	width:1200px;
	margin:0px auto;
	padding:5px 0;
	height:23px;
	box-sizing:content-box;
}

.middle .right {
	margin-top:-2px;
}

/*------- NAV -------*/

nav {
	float:left;
	margin:-5px 0 0 -5px;
	width: 610px;
}

nav ul {
	margin:0;
	padding:0;
}

nav li {
	list-style-type:none;
	padding-top:0;
	float:left;
	color:white;
}

nav a:link {
	color:white;
	text-decoration:none;
	padding: 5px 9px 3px 9px;
	height: 25px;
	display:inline-block;
	margin-right:0px;
}

.expandGalleryMenu a {
	padding-top: 0px !important;
	padding-right: 2px !important;
}

nav li li a:link {
	height: auto;
}

nav li.active > a, nav li.active > span{
	background: #545454;
	font-weight: bold;
	text-decoration:none;
}
nav li.active > span {
	padding: 5px 9px 3px;
}

nav a:visited,
nav a:hover {
	color:white;
}

nav a:hover, nav li.active a:hover {
	text-decoration:underline;
}

nav li, nav a:link {
	font-size:14px;
}

nav li ul  {
	display:none;
	position: absolute;
	width: 150px;
	left:0;
	top: 33px;
	background: #383838;
	box-shadow:0px 3px 2px black;
	border-left:1px solid #494949;	
	border-bottom:1px solid #494949;	
	border-right:1px solid #494949;	
}

/*nav li:hover > ul {
	display:block;
}*/

nav li li {
	padding:0 3px;
	display:block;
	float:none;
}

nav li li:hover {
	background:#424242;
}

nav li li a:link {
	display:block;
	width:100%;
	padding:5px;
	box-sizing:border-box;
	font-size:13px;
}

.expandMoreMenu {
	padding:5px 8px 13px 8px;
	position:relative;
}

.expandMoreMenu:hover {
	cursor:pointer;
}

.expandMoreMenu:hover > span {
	text-decoration:underline;
}

.expandGalleryMenu {
	padding:5px 8px 13px 8px;
	position:relative;
}

.expandGalleryMenu:hover {
	cursor:pointer;
}

.expandGalleryMenu:hover > span {
	text-decoration:underline;
}

.expandBlogMenu {
	padding:5px 8px 13px 8px;
	position:relative;
}

.expandBlogMenu:hover {
	cursor:pointer;
}

.expandBlogMenu:hover > span {
	text-decoration:underline;
}
.expandBlogMenu a {
	padding-top: 0px !important;
	padding-right: 2px !important;
}


/*------- MOBILE NAV ---------*/

#mobile-nav-toggle {
	display:none;
}

#mobile-nav {
	display:none;
	
	width:230px;
	height:100%;
	overflow-y:auto;
	background:#383838;
	border-right:1px solid #494949;
	box-shadow:1px 0px 3px black;
	position:fixed;
	left:0;
	top:0;
	z-index:100;
	padding:20px;
	box-sizing:border-box;
}

#mobile-nav div{
	width:100%;
}

#mobile-nav hr {
	margin:10px auto;
	border:0;
	border-top:1px solid black;
	border-bottom: 1px solid #494949;
}

#mobile-nav a {
	color:#ffffff;
	display:block;
	width:100%;
	margin:5px 0;
	font-size:15px;
	text-align:left;
	padding:5px;
}

#mobile-nav a:active {
	background:#424242;
}

header #mobile-nav input[type="text"] {
	width:166px;
}

/*langauges --------------------*/
#mobile-nav .languages {
	overflow:hidden;	
}

#mobile-nav .languages a {
	padding:5px;
	margin-right:5px;
	float:left;
	width:auto;
}

/*search --------------------*/
#mobile-nav .search .button {
	display:none;
}	


/*----- SEARCH -----*/

section.search {
	float:left;
}

.search  input[type="submit"].button {
	font-size:13px;
	padding:5px 10px;
	margin:0 10px 0 3px;
}

.toggleSearch span{
	display:none;
}

/* --- LANGUAGE ---*/

.divider {
	float:left;
	font-size:24px;
	color:#666;
	text-shadow:none;
}

#languages {
	float:left;
	position:relative;
	margin:-3px 0 0 0;
	padding:0;
}

#languages .selected {
	padding: 10px;
	height: 15px;
}

#languages .selected:hover {
	cursor:pointer;
}

#languages .selected:after, nav ul li span:after, .toggleSearch span:after {
	width: 0; 
	height: 0; 
	content:' ';
	float:right;
	margin:9px 0 0 5px;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 5px solid #fff;
}

.expandGalleryMenu.toggleSearch span:after {
	margin:9px 0 0 -5px !important;
}

.toggleSearch span:after {
	margin: 12px -12px  0 0;
}

#languages li {
	list-style-type:none;
}

#languages .selected img {
	float: left;
}

#languages .selected ul img {
	position:relative;
	top:4px;
}

#languages li ul {
	display:none;
	
	position:absolute;
	right:-45px;
	top:33px;
	background:#383838;
	padding:0;
	min-width:110px;
	box-shadow:0px 3px 2px black;
	border-left:1px solid #494949;	
	border-bottom:1px solid #494949;	
	border-right:1px solid #494949;	
}

/*#languages li:hover > ul {
	display:block;
}*/

#languages li li {
	text-align:left;
	padding-top:0;
}

#languages li li img {
	margin-right:10px;
	border:none;
}

#languages li li a {
	display:block;
	width:100%;
	padding:7px;
	box-sizing:border-box;
	color:white;
	text-decoration:none;
	font-size:12px;
}

#languages li li:last-child a{
	padding-bottom:9px;
}

#languages li li a:hover {
	cursor:pointer;
	background:#424242;
	text-decoration:underline;
}

/*-- SKIN CHOOSER --*/

.skinchooser {
	width: 24px;
	height: 24px;
	float: left;
	background:url("../images/sprite.png") -64px -27px;
	margin:3px 0 0 7px;
	opacity:0.8;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=80);  
}

#mobile-nav .skinchooser {
	opacity:1.0;
	float:right;
	position:relative;
	top:6px;
	padding:3px;
	background-position:-58px -25px;
}

.skinchooser:hover {
	cursor:pointer;
	opacity:1;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100);  
}

.skinchooser.inactive, .skinchooser.inactive:hover {
	opacity:0.3;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=30);  
}

.skinchooser.inactive:hover {
	cursor:default;
 }

 /*all dropdowns*/
 nav li ul, section.search, #languages li ul {
	z-index:30;
 }
 
/*----- BOTTOM -----*/

#banner {
	width:728px;
	margin:0 auto;
	padding:15px 0;
}

/*--------------------------------
			 FOOTER
--------------------------------*/

footer a, #footer_bottom p {
	font-size:12px;
}

#footer_bottom p {
	line-height:4px;
}

footer {
  display: block;
  margin-bottom: 0px;
  margin-top: 25px;
}

footer *{
	font-family: LucidaGrande,Helvetica,Arial,sans !important;
}

#footer_middle {
  margin-bottom: 0px;
  padding-top: 20px;
  padding-bottom: 20px;
  overflow: hidden;
}

#footer_middle_in {
  margin-left: auto;
  margin-right: auto;
}

#footer_links  div {
  width: 20%;
  margin:15px 0 10px 5%;
  float:left;
}

#footer_links {
	width:640px;
	margin:0 auto;
}

#footer_links * {
	text-shadow:1px 1px 0px black;
}

#footer_links p {
	font-size:14px;
	color:#dfdfdf;
}

#footer_links a {
	text-decoration:none;
	line-height:1.8em;
	font-size:12px;
	color:#aaa;
}

#footer_links a :visited {
	color:#aaa;
}

#footer_links a:hover {
	text-decoration:underline;
	color:white;
}

#footer_middle_in .socialmedia {
  padding-left: 0%;
  width: 100%;
}

#footer_middle_in .socialmedia div {
  width: 143px;
  margin: 0 auto;
  padding: 0px 50px 20px 50px;
  margin-bottom: 15px;
}

#footer_middle_in .socialmedia a {
	display:inline-block;
	border:none;
	width: 44px;
	height: 44px;
	opacity:0.75;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=75);  
	background:url("../images/sprite.png");
}

#footer_middle_in .socialmedia a.facebook {background-position:-162px -91px;}
#footer_middle_in .socialmedia a.twitter {background-position:-209px -91px;}
#footer_middle_in .socialmedia a.google {background-position:-255px -91px;}
#footer_middle_in .socialmedia a.linkedin {background-position:-301px -91px;}

#footer_middle_in .socialmedia a:hover {
	opacity:1.0;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100);  
}

#footer_bottom {
  padding: 20px 20px 30px 20px;
  text-align: center;
}


#footer_bottom p {
  color: #666666;
  text-shadow: 1px 1px 0px black;
}

#footer_bottom p a {
	color:#666666;
	text-decoration:underline;
}

#footer_bottom p a:hover {
	color:#dfdfdf;
}

footer .banner {
	margin:0 auto;
}

footer .banner p {
	line-height:0;
	margin:0;
}

/*--------------------
       FOOTER
--------------------*/

footer {
  /*background-color: rgba(0, 0, 0, 0.5);*/
  background-color:#0b0b0b;
  color: #dfdfdf;
}

#footer_middle {
  /*background-color: rgba(170, 170, 170, 0.2);*/
  background-color:#2b2b2b;
  border-top: 1px solid #060606;
  border-bottom: 1px solid black;
}

#footer_middle_in .socialmedia div {
  border-bottom: 1px solid #060606;
  box-shadow: 0px 1px 0px #454545;
}

#footer_middle_in .socialmedia img {
	box-shadow: 1px 1px 3px #121212;
}

#footer_middle_in .socialmedia img:hover {
	opacity:1.0;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100);  
}


/*TOP BAR FOR FUNDRAISING*/
#fundraising_notification {
	height:30px;
	padding:5px 0;
	width:100%;
	background:#ba5350;
	margin:0;
}

#fundraising_notification > div {
	margin:0 auto;
	margin-top:6px;
	width:1200px;
}

#fundraising_notification p {
	text-shadow:none;
	color:#f1f1f1;
	display:inline;
	float:none;
	font-size:14px;
}

#fundraising_notification a {
	font-weight:bold;
	text-shadow:none;
	color:#f1f1f1;
	text-decoration:underline;
	font-size:14px;
}

#fundraising_notification .closeDialog {
	float:right;
	width:30px;
	height:30px;
	background:url("../images/closeDialog.png");
	opacity:0.75;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=75);  
	margin-top:-6px;
}

#fundraising_notification .closeDialog:hover {
	cursor:pointer;
	opacity:1.0;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100);  
}


#banner_css {
	float:none !important;
}

/*--------------------------------
		   MEDIA QUERIES
---------------------------------*/

@media screen and (max-width:1279px) {
	
	header .top, header .middle > div, #fundraising_notification > div  {
		width:95%;
	}
	
	header.full-width .top, header.full-width .middle > div {
		width:100%;
		padding-right:0;
	}
	
	header.full-width .top {
		padding-left:10px;
	}
	
	header.full-width .middle > div {
		padding-left:0;
	}
}

@media screen and (max-width:1024px) {
	
	#footer_links a {
		line-height: 2em;
	}
		
	header .left {
		width:300px;
	}
	
	.before_login {margin-top:11px;}
	.after_login {margin-top:13px;}
	
	nav li, nav a:link{
		font-size:13px;
	}
	
	nav a:link {
		margin-right:0;
	}
	
	/*hide search*/
	section.search {
		display:none;
		
		position:absolute;
		background:#383838;
		top:126px;
		right: 0;
		width: auto !important;
		padding: 10px;
		
		border-left:1px solid #494949;	
		border-bottom:1px solid #494949;	
		border-right:1px solid #494949;	
	}
	
	section.search input[type="submit"].button {
		margin-right:0;
	}
	
	.toggleSearch {
		display: block;
		float: left;
	
		width: 40px;
		margin-top: -3px;
		padding: 5px;
}
	
	.toggleSearch span {
		width: 24px;
		height: 24px;
		background: url("../images/sprite.png") -89px 0;
	
		display: block;
}
	
	.toggleSearch:hover {
		cursor:pointer;
	}
	
	/*.toggleSearch:hover > section.search {
		display:block;
	}*/
	
}

@media screen and (max-width:800px) {
	.before_login, .after_login, header .middle {
		display:none;
	}
	
	header .left {
		width:250px;
	}
	
	#mobile-nav-toggle {
		display:block;
		
		width:37px;
		height:37px;
		background:#333;
		background:url("../images/sprite.png") -137px 0px;
		
		position:absolute;
		top:27px;
		right:20px;
		cursor:pointer;
	}
	
	header.gallery  #mobile-nav-toggle {
		left:280px !important;
	}
	
	header.wiki  #mobile-nav-toggle {
		left:280px !important;
	}

	header.blog #mobile-nav-toggle {
		left:280px !important;
	}
	
	#mobile-nav-toggle.close {
		background-position:-175px 0px;
	}
	
	#footer_links div {
		width:21%;
		margin-left:4%;		
	}
	
	header #banner {
		display:none;
	}
}

@media screen and (max-width: 640px) {
	#footer_links {
		width:100%;
	}
}

@media screen and (max-width: 599px) {
	p.footertext {
	  line-height: 14px;
	}
	
	#footer_links {
		width:80%;
	}

	#footer_links div {
		width:40%;
		margin-left:10%;
		margin-bottom:20px;
	}
}

@media screen and (max-width: 480px) {
	#footer_links {
		width:90%;
	}
}

@media screen and (max-width: 320px) {
	#footer_middle_in div.socialmedia div {
		padding:0 30px 20px;
	}
	
	#footer_links {
		width:100%;
	}
	
	#footer_links div{
		width:100%;
		margin:0 0 20px 0;
		text-align:center;
	}
}