html {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
*, *:before, *:after {
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}

html, body
{ height:100%; }

body, 
body *
{
  margin:0px;
  padding:0px;
  list-style-type:none;
}

body 
{
	background-color:#000000;
	background-image:url("../images/black-scrached-bg.jpg");
	color:#FFFF00;
}

div.container
{
	border:1px solid #FFFF00;
	background-color:#101010;
	max-width:1150px;
	width:100%;
	margin:100px auto;
	padding:20px;
}

header.gn_heading
{
	border-bottom:1px solid #FFFF00;
	padding-bottom:20px;
}

section.gn_maincontent
{ padding-top:20px; }

section.gn_maincontent h2.gn_tagline
{
	text-align:center;
	font-size:2.5em;
	margin-bottom:20px;
}

section.gn_maincontent h3.gn_subtitle
{
	font-size:2em;
	margin-bottom:10px;
}

section.gn_maincontent p.gn_headtxt
{
	color:#FFFFFF;
	text-align:justify;
	margin-bottom:30px;
}


div.gn-logo
{
	float:left;
	margin-right:20px;
}

div.gn_head_wrap
{ /* border:2px solid white; */
	width:820px;
	float:right;
}

div.gn_head_links_wrap
{ position:relative; }

div.gn-head-txt {
	margin-bottom:60px;
}

div.gn-head-txt h1.gn_name
{
	font-size:5em;
	font-style:italic;
}

div.gn-head-txt h2.gn_subname
{
	font-size:2em;	
}

div.image_gallary_wrap
{ margin-bottom:30px; }

div.image_gallary img
{
	display:inline-block;
	margin-right:15px;
}

div.gn_about_links
{ /* border:2px solid white; */
	position:absolute;
	top:25px;
	/* left:50%; */
	padding:5px 0px;
	margin:0px auto;
	transform:translateX(-25%);
}

div.gn_event_links
{ /* border:2px solid white; */
	position:absolute;
	top:25px;
	/* left:50%; */
	padding:5px 0px;
	margin:0px auto;
	transform:translateX(-25%);
}

div.gn_photo_links
{ /* border:2px solid white; */
	position:absolute;
	top:25px;
	/* left:50%; */
	padding:5px 0px;
	margin:0px auto;
	transform:translateX(-25%);
}

div.gn_instructors_links
 { /* border:2px solid white; */
	position:absolute;
	top:25px;
	/* left:8%; */
	padding:5px 0px;
	margin:0px auto;
	transform:translateX(-45%);
}

div.gn_classes_links
{/*border:2px solid white;*/
	position:absolute;
	top:25px;
	right:12px;
	/* width:490px; */
	padding:5px 0px;
	margin:0px auto;
}

div.gn_contact_links
{/*border:2px solid white;*/
	position:absolute;
	top:25px;
	right:12px;  /*17%;*/
	/* width:510px; */
	padding:5px 0px;
	margin:0px auto;
}

div.gn_socialmedia
{/*border:2px solid white;*/
	width:100px;
	float:right;
}

div.gn_photogallary_wrap{ /*border:2px solid white;*/
	margin:auto; 
	margin-bottom:30px; 
}

div.gn_photogallary
{
	/*display:inline-block;*/
	border:1px solid #101010;
	width:300px;
	padding-bottom:10px;
	margin-right:30px;
	margin-bottom:20px;
	float:left;
}

div.gn_photogallary:hover
{ border:1px solid #FFFFFF; }

div.gn_photogallary img
{
	width:300px;
	height:200px;
}

div.gn_photogallary p
{
	color:#FFFFFF;
	text-align:center;
	font-size:1.1em;
	margin-top:10px;
}

div.gn-page-container,
div.gn_instructors,
div.gn_class,
div.gn_contact
{ margin-bottom:30px; }

div.gn-page-container img,
div.gn_instructors img
{
	margin-right:30px;
	float:left;
}

div.gn-page-container p,
div.gn_instructors p,
div.gn_class p,
div.gn_contact p
{
	color:#FFFFFF;
	text-align:justify;
	margin-bottom:30px;
}

div.gn_class p.gn_class_img
{ text-align:center; }

div.gn_senseis_all
{ margin-bottom:10px; }

div.gn_senseis_all h3
{ color:#F79C18; margin-bottom:10px; }

div.gn_senseis_all p
{ margin-bottom:10px; }

div.gn_senseis
{/*border:2px solid white;*/ 
	width:50%;
	margin-bottom:20px;
}

div.gn_senseis_left
{ float:left; }

div.gn_senseis_right
{ float:right; }

div.gn_contact h3
{ color:#F79C18; }

div.gn_contact_img
{ 
	float:right;
	margin-left:60px;
}

div.gn_contact_txt
{
	position:relative;
	top:120px;
	left:90px;
}

div.gn_requestinfo img,
div.gn_join img
{ float:right; }

div.gn_requestinfo p.gn_info_fieldhead,
div.gn_join p.gn_join_fieldhead
{
	color:#FFFF00;
	font-size:1.25em;
	font-weight:bold;
	margin-bottom:0px;
}

div.gn_requestinfo p.btn_requestinfo,
div.gn_join p.btn_requestinfo
{ text-align:center; }

div.requestinfo_wrap,
div.gn_join_wrap
{/*border:2px solid white;*/
	width:670px;
	margin:0px auto;
}

div.requestinfo_form, 
div.gn_join_form
{ width:350px; }

div.requestinfo_form p, 
div.gn_join_form p {
	text-align: left;
}




footer.gn_footercontent p.gn_footer_copy
{/*border:2px solid white;*/
	font-size:1.1em;
	width:400px;
	float:left;
}





/*All Text Lists*/
ul.gn_adult_schedule li
{
	color:#FFFFFF;
	font-size:1.1em;
	margin-bottom:5px;
}





/*All Link Lists*/
ul.gn_head_links li
{ 
	display:inline-block;
	margin-right:15px;
}

ul.gn_head_links li:last-child
{ margin-right:0px; }

ul.gn_head_links li.gn_menu_lists
{/*border:2px solid white;*/ height:30px; }





/*All Links*/
a.gn_menu_links, 
a.gn_head_link:link, 
a.gn_head_link:visited
{
	display:inline-block;
	color:#FFFFFF;
	font-size:1.25em;
}

a.gn_about_link:link, 
a.gn_about_link:visited,
a.gn_event_link:link, 
a.gn_event_link:visited,
a.gn_photo_link:link, 
a.gn_photo_link:visited, 
a.gn_instructors_link:link, 
a.gn_instructors_link:visited, 
a.gn_classes_link:link, 
a.gn_classes_link:visited, 
a.gn_contact_link:link, 
a.gn_contact_link:visited
{
	display:inline-block;
	color:#FFFFFF;
	font-size:1.1em;
}

a.gn_head_link:hover, 
a.gn_head_link:active,
a.gn_about_link:hover, 
a.gn_about_link:active, 
a.gn_event_link:hover, 
a.gn_event_link:active,
a.gn_photo_link:hover, 
a.gn_photo_link:active,
a.gn_instructors_link:hover, 
a.gn_instructors_link:active, 
a.gn_classes_link:hover, 
a.gn_classes_link:active, 
a.gn_contact_link:hover, 
a.gn_contact_link:active
{
	color:#FFFF00;
	text-decoration:underline;
}

a.gn_menu_links:hover, 
a.gn_menu_links:active
{
	color:#FFFFFF;
	text-decoration:none;
}

a.btn_profile_link:link, 
a.btn_profile_link:visited
{ color:#FFFF00; }

a.btn_profile_link:hover, 
a.btn_profile_link:active
{ color:#F79C18; }

a.gn_about_link,
a.gn_event_link,
a.gn_photo_link, 
a.gn_instructors_link,
a.gn_classes_link, 
a.gn_contact_link
{ margin-right:30px; }

a.gn_about_link:last-child,
a.gn_event_link:last-child,
a.gn_photo_link:last-child, 
a.gn_instructors_link:last-child, 
a.gn_classes_link:last-child, 
a.gn_contact_link:last-child
{ margin-right:0px; }

a.event-btn-link {
	border-radius:5px;
	background-color:#FFFF00;
	color:#FF0000;    /*#F79C18;*/
	font-size:1em;
	padding:8px 12px;
	cursor:pointer;
	transition:background-color 0.5s, color 0.5s;
}

a.event-btn-link:hover {
	background-color:#F79C18;
	color:#FFFF00;
}



/* Admin Header Styles */
div.admin-header {
	border:1px solid #FFFF00;
	background-color:#101010;
	max-width:1150px;
	width:100%;
	margin:auto;
	padding:20px;
}

ul.admin-links {
	display:flex;
	justify-content: center;
	align-items: center;
	column-gap:30px;
}

ul.admin-links a:link,
ul.admin-links a:visited {
    display: inline-block;
    color: #FFFFFF;
    font-size: 1.25em;
}

ul.admin-links a:hover,
ul.admin-links a:active {
	color: #FFFF00;
    text-decoration: underline;
}



/* Mobile Heading Styles */
header.gn_mobile_heading {
	position:fixed;
	top:0px;
	/* left:0px; */
	border-right:1px solid #FFFF00;
	background-color:#000;
	width:270px;
	height:100vh;
	padding:30px 20px 0px;
	overflow-x:hidden;
	overflow-y: auto;
	z-index:999;
	transition: left 300ms ease;
}

div.gn-mobile-logo {
	display:flex;
	flex-direction: column;
	align-items: center;
	margin-bottom:30px;
}

div.gn-mobile-logo img {
	width:150px;
	height:150px;
}

div.admin-mobile-header {
	margin-bottom:30px;
}

ul.admin-mobile-links li,
ul.gn_mobile_head_links li {
	margin-bottom:15px;
}

ul.admin-mobile-links li a,
ul.gn_mobile_head_links li a {
	color:#fff;
	font-size:1.25em;
}

ul.admin-mobile-links li a:hover,
ul.gn_mobile_head_links li a:hover {
	color:#FFFF00;
}

div.gn-mobile-menu-links {
	background-color:#222;
	padding-left:10px;
	margin-top:5px;
}

div.gn-mobile-menu-links a {
	display:block;
	padding-bottom:10px;
}

span.gn-close {
	font-size:4rem;
	cursor:pointer;
}



/*Menu Lines*/
div.ks-menu-lines {
	width:45px;
	cursor:pointer;
	margin:auto;
}

div.ks-menu-line {
	border-radius:10px;
	background-color:#FFFF00;
	width:100%;
	height:8px;
	margin-bottom:5px;
}



/* Event Styles */
div.ks-gallery-third {
	display:grid;
	grid-template-columns: repeat(3, 1fr);
	gap:30px;
}

div.gn-event-item { 
	border:1px solid #fff;
	position:relative;
}

div.gn-event-img {
	height:200px;
	margin-bottom:15px;
}

div.gn-event-img img {
	width:100%;
	height:100%;
	margin-right: 0px;
    float: none;
}

div.gn-event-body {
	text-align: center;
}

div.gn-event-body h3 {
	font-size:1.6rem;
	margin-bottom:10px;
}

div.gn-event-body p {
	text-align: center;
	font-size:1.25rem;
}

div.gn-event-body p.gn-event-location {
	margin-bottom:100px;
}

div.gn-event-body p.gn-event-date,
div.gn-event-body p.gn-event-btn {
	display:flex;
	justify-content: space-around;
}

div.gn-event-body p.gn-event-btn {
	position:absolute;
	bottom:20px;
	left:0px;
	width:100%;
	margin-bottom:0px;
}



/* Event Details Styles */
div.gn-event-details-container {
	max-width:500px;
	margin:auto;
	margin-bottom:50px;
}

div.gn-event-details-container p {
	color:#fff;
	font-size:1.25rem;
	margin-bottom:30px;
}

div.gn-event-details-container p span.event-heading {
	color:#FFFF00;
	font-size:1.3rem;
}

div.gn-event-details-container p.gn-event-details-btn {
	display:flex;
	justify-content: space-around;
}



/* Event Registration Styles */
section.gn-main-event-content h2.gn_tagline {
	margin-bottom:50px;
}

div.gn-event-registration-form {
	max-width:500px;
	margin:auto;
	margin-bottom:50px;
}

div.gn-event-registration-form p.btn_requestinfo {
	text-align: center;
}



/* Soke Battle Memorial Page */
div.gn-memorial-container {
	margin-bottom:50px;
}

div.gn-memorial-container a:link,
div.gn-memorial-container a:visited {
	border-radius:5px;
	background-color:#FFFF00;
	color:#FF0000;    /*#F79C18;*/
	font-size:1em;
	padding:8px 12px;
	cursor:pointer;
	transition:background-color 0.5s, color 0.5s;
}

div.gn-memorial-container a:hover,
div.gn-memorial-container a:active {
	background-color:#F79C18;
	color:#FFFF00;
}



/*All Media Queries*/
@media only screen and (max-width:1240px) {
	body {
		padding:0px 20px;
	}

	div.gn-logo {
		float:none;
		text-align:center;
		margin-right:0px;
	}

	div.gn_head_wrap { /* border:2px solid white; */
		text-align:center;
		width:100%;
		float:none;
	}

	div.gn-head-txt {
		margin-bottom:30px;
	}
}

@media only screen and (max-width:930px) {
	div.admin-header,
	div.gn_head_links_wrap {
		display:none;
	}

	div.ks-menu-lines {
		display:block;
	}

	div.gn-head-txt h1.gn_name {
		font-size: 3em;
	}

	div.gn-logo img {
		width:200px;
		height:200px;
	}

	div.gn_senseis
	{ 
		width:100%;
		float:none;
		margin-bottom:20px;
	}

	div.gn_contact_img {
		text-align: center;
		margin-left: 0px;
		margin-bottom:30px;
		float:none;
	}

	div.gn_contact_txt {
		position:static;
		text-align: center;
	}

	div.gn_contact_txt p {
		text-align: center;
	}

	div.gn_requestinfo,
	div.gn_join {
		text-align: center;
	}

	div.gn_requestinfo img,
	div.gn_join img {
		margin-bottom:30px;
		float:none;
	}

	div.requestinfo_wrap,
	div.gn_join_wrap {
		max-width: 400px;
		width: 100%;
	}

	div.requestinfo_form,
	div.gn_join_form {
    	width: 100%;
	}



	/* Event Styles */
	div.ks-gallery-third {
		grid-template-columns: repeat(2, 1fr);
	}

}

@media only screen and (max-width:650px) {
	/* Event Styles */
	div.ks-gallery-third {
		grid-template-columns: repeat(1, 1fr);
	}
	
}

@media only screen and (max-width:440px) {
	div.container {
		margin:20px 0px;
	}

	footer.gn_footercontent p.gn_footer_copy,
	div.gn_socialmedia {
		text-align: center;
		width: 100%;
		float: none;
	}

	footer.gn_footercontent p.gn_footer_copy {
		margin-bottom:30px;
	}

	br.br-nodisplay {
		display:inline;
	}

	div.gn-head-txt h1.gn_name {
		font-size: 2em;
	}

	div.gn-head-txt h2.gn_subname {
		font-size: 1.5em;
	}

	div.gn-page-container,
	div.gn_instructors {
		text-align: center;
	}

	div.gn-page-container img,
	div.gn_instructors img {
		margin-right: 0px;
		float: none;
		margin-bottom:20px;
	}

	div.gn_senseis_all p {
		text-align: center;
	}

	section.gn_maincontent h2.gn_tagline {
		font-size:2rem;
	}
}

@media only screen and (max-width:370px) {
	div.gn_photogallary  {
		width:240px;
	}

	div.gn_photogallary img {
		max-width:100%;
		width:auto;
		height:auto;
	}
}