

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Lato:ital@0;1&display=swap');

/* Reset */
* { font-size:16px; font-family:Helvetica, Arial, Sans-Serif; color:#3b3d3e; }
code *, code { color:inherit; font-family: Consolas, Monaco, 'Andale Mono', monospace !important;  }
a img { border:none; }
td { vertical-align:top; }




/* Colors */
.purple { color:#875390;  }
.sky { color:#45a0c4;  }
.butterscotch { color:#bc8837; }
.brown { color:#462323;  }
.grey-green { background:#4b524c; }

.grey-grad-top { color:#bebcbc; }
.grey-grad-bottom { color:#fafafa;  }


.apollo-row {

	margin:10px; 
}


.apollo-row label {

	font-size:10px;
}

.apollo-row input[type=text], 
.apollo-row input[type=email],
.apollo-row input[type=submit],
.apollo-row select, 
.apollo-row textarea {

	display:block;
	padding:4px;
	font-size:14px;
	background:rgba(0,255,35,0.05);
	border:1px solid rgba(0,0,0,0.3);
}



.apollo-row > *:first-child:has(+ input[type="radio"]) {
  display: block;
  margin-bottom: 1em;
}


/* Typography */
h1, h1 * { font-size:24px;  }
h1 { color:#875390;  }

h2 {  color:#326fad; font-size:22px; font-family:"Cormorant Garamond"; font-weight:600; }
h3 { color:#875390; font-size:17px; margin:0; padding:0;  }



nav a, h1, #subnav a, #services a, h1.home-title * { font-family:"Cormorant Garamond"; font-weight:400; }

/* Homepage */
html, body { height:100%;  }
body { position:relative; margin:0; padding:0;  }
#wrap {   margin:0 auto;  padding-top:165px; width:100%; background:#fbfafa url(/images/side-y3.jpg) top right repeat-y;    }
#page {  position:relative;  width:100%; /* background: url(/images/all-bg3.jpg) no-repeat; */ }
header { position:fixed; top:0px;  z-index:999;  width:100%; height:165px; /* background-image:url(/images/skyfade2.png); */ border-top:9px solid #4b524c;  }


#home { position:absolute; left:-25px; top:39px; }

header > nav { position:absolute; left:145px;  z-index:999; top:-6px;   }

#tree { position:relative; margin-top:-700px; float:right; z-index:32; width:324px; height:4200px;  overflow:hidden; }

#accent { position:fixed; top:200px; width:229px; height:273px; }

/* Firefly Dropdowns */


header nav ul, header nav li, nav a { list-style:none; padding:0; margin:0; }
header nav > ul > li {  display:inline-block; vertical-align:top; min-width:108px; min-height:79px;  zoom:1; *display:inline;  }
header nav nav {  visibility:hidden; }
header nav li li { display:block; width:108px; height:79px; } /* after ie8 dies use: nav nav a:not(:first-child) { display:none; } */
/* nav > ul > li:hover > ul { visibility:visible; }  */
 

/* Firefly Dropdown Theme */
header nav a { color:#462323; font-size:20px; display:block; text-decoration:none; }
header nav > ul > li, nav > ul > li > a  {  text-align:center;   }
header nav > ul > li > a  { line-height:100px;  }
header nav > ul > li:hover a {  color:#FFF;   }

header nav > ul > li > div.tably { position:absolute; top:0px; z-index:-1; display:none; width:108px; height:79px; background:url(//s3.amazonaws.com/firefly.us/2012/images-ps/alpha-tab.png) top center no-repeat; }



header nav > ul > li:hover div.tably { display:block; }

header nav > ul > li > a.current {   }


nav#subnav { position:absolute; top:-30px;  right:0px; background:#4b524c; width:500px; height:55px; display:none;  color:#FFF; line-height:70px; text-align:center; }
nav#subnav a { color:#FFF; padding:0; margin:0; line-height:60px; display:inline-block; zoom:1; *display:inline; margin:0 10px; font-size:15px;  }
nav#subnav a:hover, nav#subnav li:hover a { color:#dd95e9 !important; }

.round22, nav#subnav { -moz-border-radius: 55px; -webkit-border-radius: 55px;  -khtml-border-radius: 55px;  border-radius: 55px;  }


#logo { position:relative; z-index:138; margin-left:20px;  top:20px; width:252px; height:123px; }

#banner { position:relative; z-index:998; width:100%; border-top:1px solid #222; border-bottom:1px solid #222;  height:329px; background-color:rgba(0,0,0,.4);  }
section#gallery { position:absolute; top:0; left:35px;  width:795px; height:329px; overflow:hidden; margin:0; padding:0;  }
section#gallery * { margin:0; padding:0;  }
section#gallery figure { position:relative; width:795px; height:329px; overflow:hidden;  }
section#gallery figcaption { position:absolute; z-index:137; top:35px; left:20px; width:290px; }
section#gallery figcaption h1 { margin-bottom:10px; }

section#services { position:absolute; z-index:998; top:-10px; right:20px; height:290px;  }
section#services a:first-child { margin-top:120px; }
section#services a { display:block; font-size:19px; color:#d4e9fc; text-decoration:none; padding:3px 0; text-shadow: black 0.1em 0.1em 0.5em  }
section#services a:hover { color:#fff; }

section#content {  position:relative; z-index:100; width:575px;     }
article { position:relative; z-index:32; padding-left:35px; width:535px; display:block;   }
article, article * { line-height:22px;  }
article h1 { line-height:40px; }

#canvaswrapper { position:fixed; pointer-events:none;  z-index:0; top:0px; right:0;  z-index:32; width:450px; height:1000px; overflow:hidden;  }
object, embed { position:relative; z-index:0; }


#social { position:fixed; bottom:20px; right:100px; width:370px; height:100px; z-index:1000; }
#email-info { font-size:25px; color:#924999; position:relative; font-family:"Cormorant Garamond"; font-weight:400;  }
#email-info:hover {  }

footer { position:fixed;  bottom:0px; z-index:999; width:100%; height:72px; background:url(//s3.amazonaws.com/firefly.us/2012/images-ps/alpha-light.png); border-top:1px solid #999;  }

footer #twinkle { height:54px; margin-left:120px;  padding:6px 0; vertical-align:center; text-align:left; width:325px; overflow:hidden;}
footer #twinkle table { margin:0; padding:0; }
footer #twinkle div { width:50px; height:50px; background:#2f3d49;  padding:4px; margin:0; overflow:hidden;   }
footer #twinkle div img {  }


#news { position:absolute; z-index:2000; top:20px;  right:0px; width:500px; height:35px; overflow:hidden; text-align:right;  }
#news div { text-align:right;  width:400px; height:52px;   }
#news a { text-align:right; width:400px; text-decoration:none;  font-size:15px; }
#news a:hover { text-decoration:underline;  }

#portfolio-arrow { position:absolute; left:0px; bottom:-2px;  }
#news-plus { position:absolute; right:0px; bottom:-4px;  }


.inline-image { display:inline; float:left; }

.home-title { width:520px; }
.shadow { -moz-box-shadow: 0 0 3px 3px #222; -webkit-box-shadow: 0 0 3px 3px #222; box-shadow: 0 0 3px 3px #222; }


article#portfolio {  }
article#portfolio figure { width:150px;  margin:5px; display:inline-block; margin:10px; vertical-align:top; border:1px solid #999;   }
article#portfolio figure .cover-photo { position:relative; width:150px; height:150px;  overflow:hidden;  }
article#portfolio figure .cover-photo img { width:300px; position:absolute; left:-75px;   }


article.staff { margin-bottom:50px; margin-left:0; padding-left:0;  }


.videoItem { margin-bottom:50px; clear:both; }



.blog-post { margin:20px 0; border-bottom:1px dotted #AAA; }
.blog-post .stardate { margin:0; padding:0;  color:#333; font-size:13px; line-height:13px; text-transform:uppercase; }
.blog-post h2 { margin:0; padding:0;  }
.blog-post h4 { color:#336666; margin-top:0px; padding-top:0px;  }
.blog-author { font-size:22px; }



.leftImage, .left-image { float:left; padding:0 12px 12px 0px;  }
.rightImage, .right-image { float:right; padding:0 0 12px 12px;  }



#logo {

	-webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;

}




	#responsive-nav { display:none;  }
	#responsive-nav { position:absolute; z-index:1000; top:0; left:0; background:rgba(0,0,0,0.7); width:100%; padding-bottom:1000%; }
	#responsive-nav * { color:#FFF; }

	#responsive-nav > ul { list-style:none;  }
	#responsive-nav ul ul { list-style:disc; }
	#responsive-nav li { padding:9px; }
	#responsive-nav a { text-decoration: none; font-size:18px;  text-transform: uppercase;  }
	#responsive-nav a:hover { text-decoration: underline; }

	#menu-icon { display:none; padding:15px; width:30px; height:30px; }





@media only screen and (max-width :1024px) {

	#social {  
		position:static;
		width:auto; 
		height:auto;
		padding:2px;
		background:rgba(255,255,255,0.2);
		padding-left:35px;
	}


	section#services { 
		display:none;
	}
}


	@media only screen and (max-width :940px) {

		#news { display:none;  }
	}






@media only screen and (max-width : 568px) { 
    

  	header > nav > ul { display:none; }
  	header > nav { top:0;  width:100%; position:absolute; left:0; text-align:right;   }

  	#social { z-index:9998; }

  	#menu-icon { display:block; position:absolute; right:5px; top:5px;   }
  	#home { display:none; }
    #wrap, header, #page, footer { width:100%; overflow:hidden; }

    #wrap { position:absolute; width:100%; padding-top:130px;   }

    header { height:130px !important; width:100%;  text-align:center; }

	#logo {  margin-left:-20px; height:100px; width:auto;  }

	#canvaswrapper { margin-left:0px;  z-index:32; width:100%; height:100%; overflow:hidden; pointer-events:none;  }


	#banner { width:100%; height:200px;  overflow:hidden; }
	#banner img { width:100%; height:auto;  }
	section#gallery {  left:-270px; top:-50px;   }
	figcaption { display:none; }
	#cycle-pager { display:none; }

	section#content { width:100%;  height:auto;    }
	article, h1.home-title { width:90%; }

	article { margin-left:0px !important; padding:20px !important; padding-bottom:200px;  }

	section#news, #portfolio-arrow , #services { display:none;  }

 	#social { margin:0; padding:0; margin-bottom:100px;  width:100%; text-align:center;  }

 	

 	#tree {  opacity:0.1; position:absolute; right:0px; top:700px; z-index: 1; pointer-events:none;  }

 	#subnav { display:none; }

 	footer { height:45px; }
 	footer #twinkle { height:35px; margin-left:0px; position:relative; bottom:5px;  }
 	#twinkle div { width:30px; height:30px; }
 	#twinkle img { height:30px; }


 	#apollo-form input[type=text], #apollo-form textarea { width:180px !important; }


}





