/* @group generic */

* {
	margin: 0;
	padding: 0;
}

.clearAll {
	clear: both;
}

a {
	outline: none;
	color: #666;
	font-weight: bold;
	text-decoration: underline;
}

a:hover {
	text-decoration: underline;
}

body {
	background: url(../img/page_bg.jpg) center;
}

div#headerBackground {
	position: absolute;
	height: 20px;
	width: 100%;
	background: url(../img/header_shadow.png) repeat-x 0 bottom;
	top: 167px;
}

div#headerFill {
	position: absolute;
	height: 178px;
	width: 100%;
	background: url(../img/header_fill.jpg) center -20px;
}

div#pageContainer {
	width: 960px;
	margin: auto;
	min-height: 750px;
	background-repeat: no-repeat;
	font-family: "Times New Roman", Times, Georgia, serif;
	position: relative;
	padding-bottom: 30px;
}

div#pageContent {
	position: relative;
}

div#pageFooter {
	position: absolute;
	bottom: 10px;
	width: 960px;
	margin-bottom: 10px;
}

#pageFooter h3 {
	text-align: center;
	font-size: 13px;
	font-weight: normal;
	font-style: normal;
	color: #aaa;
}

#pageFooter h5 {
	text-align: center;
	font-size: 12px;
	font-weight: normal;
	font-style: normal;
	color: #aaa;
}

#pageFooter h5 a {
	color: #666;
	text-decoration: none;
	font-weight: normal;
	font-style: normal;
}

#pageFooter h5 a:hover {
	text-decoration: underline;
}

div#copyline {
	width: 490px;
	left: 75px;
	position: absolute;
	top: 30px;
}

#copyline h3 {
	height: 0;
	overflow: hidden;
	background: url(../img/copyline_temp.png) no-repeat 0 0;
}

#landPhotoContent ul {
	margin-bottom: 10px;
	list-style-type: none;
}

/* @end */

/* @group header */

div#pageHeader {
	height: 178px;
	position: relative;
	background-position: 0 0;
	background-repeat: no-repeat;
}

#pageHeader ul {
	list-style-type: none;
	position: absolute;
	left: 226px;
	top: 49px;
}

#pageHeader ul li {
	float: left;
	height: 42px;
}

#pageHeader ul li a {
	height: 0;
	padding-top: 40px;
	float: left;
	overflow: hidden;
	background-position: 0 0;
	background-repeat: no-repeat;
}

#pageHeader ul li a:hover {
	background-position: 0 -40px;
}

#pageHeader ul li a.navHome {
	width: 180px;
	height: 0;
	padding-top: 98px;
	position: absolute;
	top: -5px;
	left: -205px;
	font-family: "Lucida Grande", Lucida, Verdana, sans-serif;
}

a.navAbout {
	background-image: url(../img/nav_about.png);
	width: 87px;
}

body#bAbout #pageHeader a.navAbout {
	background-position: 0 -80px;
}

a.navGallery {
	background-image: url(../img/nav_gallery.png);
	width: 79px;
}

body#bGallery #pageHeader a.navGallery {
	background-position: 0 -80px;
}

a.navAlbums {
	background-image: url(../img/nav_albums.png);
	width: 86px;
}

body#bAlbums #pageHeader a.navAlbums {
	background-position: 0 -80px;
}

a.navTestimonials {
	background-image: url(../img/nav_testimonials.png);
	width: 118px;
}

body#bTestimonials #pageHeader a.navTestimonials {
	background-position: 0 -80px;
}

a.navContact {
	background-image: url(../img/nav_contact.png);
	width: 88px;
}

body#bContact #pageHeader a.navContact {
	background-position: 0 -80px;
}

a.navLinks {
	background-image: url(../img/nav_links.png);
	width: 65px;
}

body#bLinks #pageHeader a.navLinks {
	background-position: 0 -80px;
}

a.navBlog {
	background-image: url(../img/nav_blog.png);
	width: 88px;
}

a.navClient {
	background-image: url(../img/nav_client.png);
	width: 99px;
}

#pageHeader p#RRlink {
	position: absolute;
	right: 19px;
	top: 27px;
}

#pageHeader p#RRlink a {
	width: 129px;
	height: 0;
	display: block;
	padding-top: 85px;
	overflow: hidden;
	background: url(../img/rr_badge.png) no-repeat 0 0;
	font-family: "Lucida Grande", Lucida, Verdana, sans-serif;
}

#pageHeader p#RRlink a:hover {
	background-image: url(../img/rr_badge_over.png);
}

#pageHeader p#copyright {
	color: #fff;
	position: absolute;
	left: 226px;
	bottom: 35px;
	font-size: 12px;
}

div#headerLogo {
	width: 180px;
	height: 0;
	padding-top: 98px;
	overflow: hidden;
	position: absolute;
	top: 42px;
	left: 19px;
	background: url(../img/rsp_logo.png) no-repeat;
	font-family: "Lucida Grande", Lucida, Verdana, sans-serif;
}

div#headerShadow {
	height: 10px;
	width: 100%;
	position: absolute;
	right: 0;
	background: url(../img/header_shadow.png) repeat-x center bottom;
	bottom: 0;
}

p#galleryHint {
	position: absolute;
	color: #fed8a7;
	top: 117px;
	text-align: right;
	right: 25px;
}

/* @end */

/* @group photo boxes */

div#landPhotoShadows {
	background-image: url(../img/land_photo_shad.png);
	width: 550px;
	height: 369px;
	position: absolute;
	top: 160px;
	left: 62px;
}

div#landPhotoFill {
	width: 420px;
	height: 318px;
	position: absolute;
	top: 162px;
	left: 66px;
	background: url(../img/land_photo_fill.png) no-repeat;
	padding: 20px 140px 50px 20px;
	font: 14px/18px "Times New Roman", Times, Georgia, serif;
}

div#landPhotoCorners {
	background-image: url(../img/land_photo_corners.png);
	width: 555px;
	height: 374px;
	position: absolute;
	top: 157px;
	left: 60px;
}

div#landPhotoShadows.gallery {
	left: 352px;
	top: 62px;
}

div#landPhotoFill.gallery {
	left: 356px;
	top: 4px;
	width: 546px;
	height: 546px;
	background-image: url(../img/gallery_photo_fill.png);
}

div#landPhotoCorners.gallery {
	top: 59px;
	left: 350px;
}

div#portPhotoFill {
	position: absolute;
	background-image: url(../img/port_photo_fill.png);
	width: 378px;
	height: 529px;
	top: -58px;
	right: 60px;
}

#portPhotoFill img {
	position: absolute;
	top: 17px;
	left: 19px;
}

/* @end */

/* @group text */

div#landPhotoContent {
	position: absolute;
	top: 182px;
	left: 87px;
	width: 430px;
	height: 325px;
}

div#landPhotoContent p {
	margin-bottom: 10px;
	font-size: 14px;
	line-height: 18px;
	color: #666;
}

div#landPhotoContent h4 {
	font-size: 14px;
	line-height: 18px;
	color: #666;
}

/* @end */

/* @group home */

#homeContent h2 {
	background-image: url(../img/home_hello.png);
	width: 695px;
	height: 0;
	padding-top: 96px;
	overflow: hidden;
	position: absolute;
	top: 65px;
	left: 117px;
}

#homeContent img.homeSplash {
	position: absolute;
	top: 170px;
	left: 480px;
}

div#homeText {
	position: absolute;
	width: 300px;
	top: 220px;
	left: 200px;
	color: #7e7e7e;
	font-size: 14px;
	line-height: 18px;
}

#homeText h3 {
	font-size: 42px;
	line-height: 60px;
	text-transform: uppercase;
}

#homeText h3 a {
	font-weight: normal;
	font-style: normal;
	text-decoration: none;
}

#homeText h3 a:hover {
	text-decoration: none;
	color: #000;
}

img#homeConfetti1 {
	position: absolute;
	top: 141px;
	left: 116px;
}

img#homeConfetti2 {
	position: absolute;
	top: 350px;
	left: 400px;
}

img#homeConfetti3 {
	position: absolute;
	top: 260px;
	left: 740px;
}

/* @end */

/* @group about me */

body#bAbout #copyline h3 {
	background-image: url(../img/copyline_about.png);
	width: 435px;
	padding-top: 95px;
}

div#aboutStudioImage {
	position: absolute;
	top: 297px;
	left: 687px;
	width: 220px;
}

div#aboutStudioImage p {
	position: absolute;
	top: 190px;
	left: -60px;
	font-size: 14px;
}

div#aboutMapLink {
	position: absolute;
	top: 407px;
	left: 844px;
}

/* @end */

/* @group albums */

body#bAlbums #copyline h3 {
	background-image: url(../img/copyline_albums.png);
	width: 435px;
	padding-top: 115px;
}

/* @end */

/* @group testimonials */

div.testimonialSlide {
	position: absolute;
	width: 430px;
	height: 330px;
}

body#bTestimonials #copyline h3 {
	width: 435px;
	padding-top: 115px;
	background: url(../img/copyline_testimonials.png) no-repeat 0 20px;
}

img.testimonialImage {
	float: left;
}

div.testimonialQuote {
	width: 190px;
	background: url(../img/quotes_top.png) no-repeat left top;
	padding-top: 25px;
	color: #666;
	margin-left: 10px;
	float: left;
}

#landPhotoContent div.testimonialQuote p.quote {
	font-style: italic;
	margin-bottom: 20px;
}

#landPhotoContent div.testimonialQuote p {
	font-size: 16px;
}

div.testimonialQuoteClose {
	height: 25px;
	width: 200px;
	float: left;
	background: url(../img/quotes_bottom.png) no-repeat right bottom;
}

div#testimonialNav {
	position: absolute;
	left: 315px;
	top: 490px;
	width: 200px;
	height: 20px;
	font-size: 14px;
	line-height: 18px;
	z-index: 50;
}

div#testimonialNav p:hover {
	cursor: pointer;
}

p#testimonialNavPrev {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	font-weight: bold;
	text-decoration: none;
	color: #666;
}

p#testimonialNavNext {
	position: absolute;
	top: 0;
	display: block;
	right: 0;
	font-weight: bold;
	text-decoration: none;
	color: #666;
}

img.portPhoto {
	position: absolute;
	top: -223px;
	left: 454px;
}

/* @end */

/* @group contact */

div#contactFields {
	position: absolute;
	top: 0;
}

body#bContact #copyline h3 {
	width: 435px;
	padding-top: 115px;
	background: url(../img/copyline_contact.png) no-repeat 0 20px;
}

#contactMenuShort {
	width: 410px;
	position: relative;
	height: 50px;
}

#landPhotoContent #contactFields p {
	margin-bottom: 15px;
	position: relative;
}

#landPhotoContent #contactFields p.contactMenuDate {
	position: absolute;
	width: 220px;
	top: 0;
	left: 0;
}

#landPhotoContent #contactFields p.contactMenuLocation {
	margin-left: 10px;
	position: absolute;
	top: 0;
	right: 0;
}

#landPhotoContent #contactFields p label {
	font-size: 14px;
	color: #666;
	display: block;
}

#landPhotoContent #contactFields p input {
	width: 100%;
	font-size: 14px;
	color: #666;
	border-width: 1px;
}

#landPhotoContent #contactFields p select {
	font-size: 14px;
	background-color: #eee;
	color: #666;
}

select#contactDay {
}

div#contactSubmit {
	position: absolute;
	top: 280px;
	left: 530px;
	width: 330px;
}

#contactSubmit p.label {
	width: 146px;
	color: #666;
	padding-top: 7px;
	float: left;
	padding-left: 5px;
}

#contactSubmit p.submit {
	float: left;
}

#contactSubmit p.submit a.formSubmit {
	background-image: url(../img/form_submit.png);
	width: 117px;
	height: 0;
	display: block;
	padding-top: 47px;
	overflow: hidden;
	left: 175px;
}

h3.form_ok {
	background: url(../img/copyline_thanks.png) no-repeat;
	width: 74px;
	height: 0;
	padding-top: 12px;
	overflow: hidden;
	margin-bottom: 6px;
	margin-left: 30px;
	margin-top: 10px;
}

div#landPhotoContent p.form_ok {
	color: #666;
	font-style: italic;
	font-size: 16px;
	margin-left: 30px;
	margin-top: 10px;
	width: 325px;
}

h3.form_error {
	background: url(../img/copyline_whoops.png) no-repeat;
	width: 93px;
	height: 0;
	padding-top: 15px;
	overflow: hidden;
	margin-bottom: 3px;
	margin-left: 30px;
	margin-top: 10px;
}

div#landPhotoContent p.form_error {
	color: #666;
	font-style: italic;
	font-size: 16px;
	margin-left: 30px;
	margin-top: 10px;
	width: 325px;
}

/* @end */

/* @group links */

body#bLinks #copyline h3 {
	width: 390px;
	padding-top: 79px;
	background: url(../img/copyline_links.png) no-repeat 0 20px;
}

div#linksConfetti {
	width: 136px;
	height: 145px;
	position: absolute;
	top: 120px;
	left: 390px;
	background: url(../img/links_confetti_2.png) no-repeat;
}

div#linksConfetti2 {
	width: 136px;
	height: 145px;
	position: absolute;
	top: 474px;
	left: 823px;
	background: url(../img/links_confetti_3.png) no-repeat;
}

div#contactBlog {
	position: absolute;
	top: 480px;
	left: 660px;
	width: 190px;
}

#contactBlog p a {
	display: block;
	width: 175px;
	height: 0;
	padding-top: 43px;
	overflow: hidden;
	background: url(../img/links_hitched.png) no-repeat 0 -43px;
}

#contactBlog p a:hover {
	background-position: 0 0;
}

div.linkCol1 {
	width: 190px;
	float: left;
}

div.linkCol1 ul {
	
}

div.linkCol1 ul li {
	font-size: 13px;
}

div.linkCol1 ul li a {
	text-decoration: none;
	font-weight: normal;
	font-style: normal;
}

div.linkCol2 {
	width: 220px;
	float: left;
	border-left: 1px solid #999;
	margin-left: 8px;
	padding-left: 8px;
}

div.linkCol2 h4 {
	margin-bottom: 10px;
}

div.linkCol2 h4 a {
	display: block;
	width: 136px;
	height: 0;
	background: url(../img/rr-link.png) no-repeat 0 -100px;
	padding-top: 88px;
	overflow: hidden;
}

div.linkCol2 h4 a:hover {
	background-position: 0 0;
}



/* @end */

/* @group live validation */

.LV_validation_message {
	margin: 0 0 0 5px;
	position: absolute;
	top: 0;
	right: 0;
	font-family: "Times New Roman", Times, Georgia, serif;
	font-style: italic;
}

.LV_valid {
	color: #666;
}

.LV_invalid {
	color: #900;
}

.LV_valid_field,
input.LV_valid_field:hover, 
input.LV_valid_field:active,
textarea.LV_valid_field:hover, 
textarea.LV_valid_field:active {
}

.LV_invalid_field, 
input.LV_invalid_field:hover, 
input.LV_invalid_field:active,
textarea.LV_invalid_field:hover, 
textarea.LV_invalid_field:active {
	background-color: #fcc;
}

/* @end */