/* @ default page styles */
@charset "utf-8";
* { margin: 0; padding: 0; }
a:link	{ color: #00f; }
a:visited	{ color: #636; }
a:hover, a:active	{ color: #006; }

/* page layout - main containers */
body
{
	font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px;
	color: #003300;
}
body.bodyScenic
{
	position: static;
	padding: 0; 
	min-height: 1050px;
	background: #8EA4E0 url(/img/bkgnd-full-elcap-1600x1050.jpg) no-repeat fixed top center;
}
body.low	{ background-image: url(/img/bkgnd-lo-full-elcap-1600x1050.jpg); }
h1, .heading1 { padding: 0 0 25px; font-size: 1.5em; font-weight: bold; text-shadow: 0.08em 0.08em #CCC; }
h2, .heading2 { padding: 0 0 20px; color: #080; font-size: 1.25em; font-weight: bold; text-shadow: 0.08em 0.08em #CCC; }
h3, .heading3 { padding: 0 0 15px; font-size: 1.15em; color: #333; }
p { padding-bottom: 15px; text-shadow: 0.08em 0.08em #CCC; }
ul { padding: 0 0 20px 20px; }
ul li { padding: 0 0 5px 0; list-style: inside; }
#content
{
	position: relative;
	margin: 40px auto; padding: 120px 30px 20px;
	width: 80%;	
}
#content .col  /* standard column */
{
	position: relative;
	margin: 0; padding: 3em;
	padding-right: 380px; /* leaves an extra 20px for gutter with sidebar */
	font-size: 1.2em; line-height: 1.5em;
}
#content .sidebar
{
	position: absolute; top: 18px; left: 100%;
	margin-left: -360px;
	width: 360px; 
}
#header
{
	position: absolute; top: 15px; left: 0;
	width: 500px; height: 80px;
}
.footer
{
	margin: 0; padding: 1em 10%;
	font-size: 0.8em;
	text-align: right;
}
#footerNav, #i18nNav { margin: 0; padding: 0 0 1em; text-align: center; }
#footerNav li, #i18nNav li
{ 
	display: inline-block;
	margin: 0; padding: 0 0.5em 0 0;
	font-size: 0.9em;
	list-style: none;
}
#footerNav li:after, #i18nNav li:after { content: " |"; }
#footerNav li.last:after, #i18nNav li.last:after { content: ""; }

/* @ content background */
#content > * { position: relative; z-index: 1; }
#contentbk
{
	position: absolute;
	top: 0; left: 0; bottom: 0;
	width: 100%;
	background: white; border: 4px outset #AAA;
	border-radius: 12px; -moz-border-radius: 12px;
	z-index: 0;
}

/* @ custom classes */
.clear	{ clear: both; }
.fancyfirst { color: #090; font-size: 2em; } 
.treeline
{
	height: 0;
	text-align: left;
}
.widgetReserve
{
	margin: 0 0 1em; padding: 1em; 
	background: white; border: 2px solid #080; 
	border-radius: 8px; -moz-border-radius: 8px;
	font-size: 1.4em; line-height: 1.2em; font-weight: 800;
	text-shadow: 0.05em 0.05em #DED; 
}

/* @ top navigation */
.topNav 
{
	position: relative;
}
.topNav li
{
	position: absolute; display: block;
	margin: 0; padding: 4px 8px 8px;  
	width: auto; height: auto;
	list-style: none;
	background: url(/img/inspiration-point-lo-pan-500x130.jpg) repeat-x;
	border: 3px solid #efeffe;
	border-radius: 8px; -moz-border-radius: 8px;
}
.topNav li:hover, .topNav li:active
{
	padding: 12px 16px 16px;
	border-color: #EEF;
	z-index: 1;
}
.topNav li.expand-link
{
	cursor: pointer;
}
.topNav li.selected, .topNav li.selected-page
{
	border-width: 4px; border-color: #cec;
	z-index: 1;
}
.topNav li.shadow { border-color: #000; }
.topNav li a
{
	font-size: 1.3em; font-weight: bold;
	font-variant: normal;
	color: #fff;
	text-decoration: none; text-shadow: #6D81BC 0.16em 0.16em;
}
.topNav .nav-icon
{
	display: block; float: left;
	margin: 0 10px 0 0; padding: 0; 
	width: 32px; height: 32px;
	background: url(/img/nav-icons.png) no-repeat; border: 1px solid #eee;
	vertical-align: top;
}
.topNav .nav-desc
{
	display: block;
	font-size: 0.9em; white-space: nowrap;
	color: #fff; 
}
.topNav #tnHome		{ top: 47px; left: 68px; background-position: -38px -57px;}
.topNav #tnHome a		{  }
.topNav #tnHouse		{ top: 0; left: 94px; background-position: -64px -10px; }
.topNav #tnHouse a	{ }
.topNav #tnHouse span.nav-icon	{ background-position: 0 0; }
.topNav #tnApt			{ top: 45px; left: 140px; background-position: -110px -55px; }
.topNav #tnApt a			{  }
.topNav #tnApt span.nav-icon	{ background-position: -36px 0; }
.topNav #tnRates		{ top: 3px; left: 298px; background-position: -268px -13px;}
.topNav #tnRates a		{  }
.topNav #tnAvail			{ top: 15px; left: 356px; background-position: -326px -25px; }
.topNav #tnAvail a		{ font-size: 1.1em; }
.topNav #tnMap			{ top: 0; left: 463px; background-position: -433px -10px;}
.topNav #tnMap a		{  }
.topNav #tnTest			{ top: 43px; left: 410px; background-position: -380px -53px; }
.topNav #tnTest a		{ font-size: 1.1em; }
.topNav #tnInfo			{ top: 71px; left: 386px; background-position: -356px -81px; }
.topNav #tnInfo a			{  font-size: 1.1em; }
.topNav #reservations-cta { top: 22px; left: 528px; width: 274px; }
.topNav #reservations-cta-shadow { width: 274px; }
.topNav #reservations-cta .nav-desc, .topNav #reservations-cta-shadow .nav-desc
{
	font-size: 1em; line-height: 1.2em;
	color: #F5F5DC;
	text-align: cener;
	white-space: normal;
	text-shadow: #9DA1EC 0.16em 0.16em;
}

/* @ photo container */
.photoContr
{
	margin: 0; padding: 12px;
	width: 240px;
	background: white; border: 1px solid #EEE;
	border-radius: 8px; -moz-border-radius: 8px;
}
.photoContr img { width: 240px; }
.photoContr span.caption
{
	display: block;
	padding: 1.1em; 
	font-size: 0.8em; line-height: 1.35em;
}
.photoContr span.photocredit { font-style: italic; }
.single { margin: 0 auto; }

/* @ video boxes trail */
.has-vbox #content { padding-top: 100px; }
.has-vbox #content h1 { padding-bottom: 160px; }
#content .vbox-wrap { position: absolute; }  /* override wild card */
.vbox-wrap
{
	top: 135px; left: 4px;
	margin: 0; padding: 0;
	width: 100%;
	overflow: hidden;
}
.vbox-container
{
	position: relative; overflow: hidden;
	margin: 0; padding: 0;
	height: 140px;
	background: #BDBDBD;
}
.vbox-container ul
{
	position: relative;
	margin: 0; padding: 0;
	width: inherit; height: 100%;
}
.vbox-container .vbox
{
	position: relative; float: left;
	margin: 0; padding: 15px;
	list-style: none;
 }
.vbox-container .vbox a { }
.vbox-container .vbox a img 
{
	margin: 0; padding: 0;
	width: 150px;
	border: 2px solid #EAEAEA;
}

/* @ video boxes dynamic */
#activeVboxShadow
{
	position:absolute; top: 0; left: 0; display: none;
	width: 100%; height: 100%; 
	background: #000;
	z-index: 1;
}
 #activeVbox
 {
	position: absolute; top: 0; left: 0;
	width: 340px; height: 240px;
	background: #000;
	z-index: 2;
 }
 #activeVbox .close { padding: 5px; text-align: right; }
 #activeVbox .close a { color: white; text-decoration: none; }
 
/* @ reservation request form dynamic */
.shadowResn
{
	position:absolute; top: 0; left: 0; display: none;
	width: 200%; height: 400%; 
	background: #666 url(/img/resn-shadow.png) no-repeat -2000px -40px;
	z-index: 2;
}
.rightResn
{
	position: absolute; top: 52px; left: 2400px;
	margin-left: 78%; padding: 20px;
	width: 500px; height: 1604px; 
	background: #fff; border: 3px solid #129CD3;
	border-radius: 12px; -moz-border-radius: 12px;
	z-index: 3;
}
.rightResn .resn-heading { font-size: 1.4em; color: #129CD3; }
.rightResn .close { position: relative; top: -3em; left: 0; text-align: right; }

/* @ transitional page styles */
.bodyScenic ul#topNav
{
	top: -12px;
	padding-top: 0;
}

/* @ house page specific styles */
#house .text-section { float: left; width: 60%; padding: 0 20px 20px 0; }
#house .image-section { float: left; margin: 10px; }

/* @ house page specific styles */
#map .map-image { width: 360px; height: 296px; }

/* @ yosemite info page specific styles */
#yosemite_info ul li { list-style: none outside; }
#yosemite_info li.photo-list-item { float: left; width: 325px; padding: 10px 0 5px 10px; }
#yosemite_info li.photo-list-item img { margin-right: 10px; border: 0 none; }
#yosemite_info a.heading2 { font-size: inherit; text-decoration: none; color: #080; }

/* @ sitemap page specific styles */
#sitemap ul li { list-style: none outside; }

/* @ jumping deer photo page specific styles */
#jumping_deer_photo .marginTitle { margin: 20px; }
#jumping_deer_photo .marginImage
{
	float: left;
	margin: 0 20px 20px 50px; 
	border: 5px inset #060; border-top-color: #9F9;
}

/* @ testimonials page specific styles */
#testimonials .attrib { color: #990033; font-weight: bold; }