/* ------------ General ------------ */
* { margin:0; padding:0; }
body { background:#40137e; color:#333; font:0.8em Verdana, Geneva, sans-serif; }
img { border:none; }
a { color:#ff6633; text-decoration:none; }
a:hover { text-decoration:underline; }
h1 { background: transparent; color: #6c9; font-size: 24px; font-weight: 200; margin:0 0 13px; }
h3 { background: transparent; color: #ff6633; font-size: 30px; font-weight: 200; margin: 10px 0; }
h3 span { color: #f63; }
h3 strong { color: #0cf; }
h4 { background: transparent; color: #00c5f8; font-size: 24px; font-weight: 200; margin: 10px 0; }
h4 span { background: transparent; color: #6c9; }
h5 { background: transparent; color: #6c9; font-size: 14px; }

ul, li { list-style-type: none; }
p { line-height:1.7em; margin:0 0 10px; }

/* ------------ Header ------------ */
#header_wrap { height:220px; background:url(../images/header_bg.png) 0 0 repeat-x; }
#header { width:800px; margin:0 auto; position:relative; height:220px; }
#logo { display:block; width:223px; height:226px; position:absolute; top:19px; left:-27px; z-index:4; }
#cotm { display:block; width:169px; height:217px; position:absolute; top:72px; right:-1px; z-index:3; }

/* ------------ Large Header Image ------------ */
#header_img { width:800px; height:300px; padding:12px; position:absolute; z-index:2; left:-12px; top:188px; }
#header_img img { display:block; }
#header_img.welcome { background:url(../images/headerimg_bg.png) 0 0 no-repeat; }
#header_img.hairstudioimg { background:url(../images/headerimg_hs_bg.png) 0 0 no-repeat; }

/* ------------ Main Nav ------------ */
.nav li { display:block; float:left; list-style:none; }
#main_nav { float:right; z-index:5; position:relative; }
#main_nav a { display:block; height:46px; overflow:hidden; text-indent:-9000px; margin:0 -20px 0 0; position:relative; z-index:7; }
#main_nav a.last { margin:0 -10px 0 0; }
#main_nav a:hover { background-position:0 -46px; z-index:6; }

/* ------------ Main Nav: Links ------------ */
a.studio { background:url(../images/nav_hairstudio.png) 0 0 no-repeat; width:114px; }
a.boutique { background:url(../images/nav_fashionbou.png) 0 0 no-repeat; width:158px; }
a.vip { background:url(../images/nav_vip.png) 0 0 no-repeat; width:107px; }
a.services { background:url(../images/nav_services.png) 0 0 no-repeat; width:92px; }
a.about { background:url(../images/nav_about.png) 0 0 no-repeat; width:131px; }
a.contact { background:url(../images/nav_contact.png) 0 0 no-repeat; width:140px; }

/* ------------ Content Wraps ------------ */
#background { background:url(../images/body_bg.jpg) top center repeat-y; }
.header_shadow { display:block; background:url(../images/header_shadow.png) 0 0 repeat-x; width:100%; height:10px;}
body.blue #background { background:url(../images/body_bg_blue.jpg) top center repeat-y; }
#content_wrap { width:1024px; margin:0 auto 0; }

/* ------------ Main Content ------------ */
#content_main { background: #fff url(../images/header_shadow.png) 0 0 repeat-x; margin: 0 auto; padding:0 0 50px; width:800px; font-size:0.9em; } 
body.has_img #content_main { padding:270px 0 0; }
body.has_img #content_main .header_shadow { display:none; }
body.has_img #content_fashion { padding:270px 0 60px; min-height:440px; }
body.has_img #content_hair { padding:270px 0 80px; min-height:440px; }

.col_left { padding:30px 24px 0 32px; width:352px; float:left; }
.col_right { padding:30px 0 0 0; float:left; width:392px; }
.col_right img { display:block; }
.col_right h2 { margin:-76px 0 0; }

.col_right_spaced { padding:30px 30px 0 0; float:left; width:362px; }

.directions { padding: 10px; width: 270px; }
.col_both { padding: 0 20px; width: 759px; }
.col_cotm { padding: 30px 20px; width: 759px; }

#block { margin: -132px; }

/* ------------ Lists ------------ */
#awards li { list-style-type: none; padding: 10px 0; }
#awards li a { background: inherit; border-bottom: 1px dashed #6c9; color: #40137e; font-size: 1.6em; font-weight: bold; line-height: 2em; width: 300px; }
#awards li a:hover { background: inherit; color: #6c9; text-decoration: none; }

.purplelist { border-bottom: 1px dashed #6c9; }
.purplelist li { padding: 4px 0; }
.purplelist li a { background: inherit; color: #40137e; font-size: 16px; font-weight: bold; width: 300px; }
.purplelist li a:hover { background: inherit; color: #6c9; text-decoration: none; }

.productlist { margin: 10px 0; }
.productlist li { padding: 3px 0; }


/* ------------ Page Specific ------------ */
#content_bio { background: #fff url(../images/header_shadow.png) 0 0 repeat-x; margin: 0 auto; padding:0 0 100px 0; width:800px; min-height:750px; font-size:0.9em; } 
#content_bio h2 { color: #6c9; font-size: 18px; font-weight: 500; padding: 30px 0 0 0; text-align: center; }


#content_fashion { background: #fff url(../images/header_shadow.png) 0 0 repeat-x; margin: 0 auto; padding:0 0 50px 0; width:800px; min-height:750px; font-size:0.9em; } 
.col_fashion_left { float: left; padding: 40px 100px 20px 30px; width: 382px; }
.col_fashion_left h2 { background: transparent; color: #6c9; font-size: 24px; font-weight: 200; margin: 10px 0; }
.col_fashion_left h2 span { background: transparent; color: #f26037; }
.col_fashion_left h3 { background: transparent; color: #6c9; font-size: 24px; font-weight: 200; margin: 10px 0; } 
.col_fashion_right { background: url(../images/fashion_services.jpg) 0 0 no-repeat; height: 551px; float: right; margin: 30px 0 0 0; width: 287px; }
.col_fashion_right h3 { background: transparent; color: #f26037; font-size: 24px; font-weight: 200; margin: 10px 0 10px 20px; } 


#content_hair { background: #fff url(../images/header_shadow.png) 0 0 repeat-x; font-size:0.9em; margin: 0 auto; min-height:750px; padding:0 0 50px 0; width:800px; } 

/* ------------ Hair Studio ------------ */
.col_hair_left { float: left; padding: 30px 24px 0 32px; width: 352px; }
.col_hair_left h2 { background: transparent; color: #6c9; font-size: 24px; font-weight: 200; margin: 10px 0; }
.col_hair_left h2 span { background: transparent; color: #f26037; }
.col_hair_left h3 { background: transparent; color: #6c9; font-size: 24px; font-weight: 200; margin: 10px 0; } 
.col_hair_right { background-color: #fff; height: 451px; float: left; padding:30px 0 0 0; width: 392px; }


#headshots { padding: 5px 0 20px 0; text-align: left; }
#headshots li { display: inline; padding: 0 2px; }

#sideheadshots { margin: 0 0 10px 0; padding: 10px 0 0 20px; }
#sideheadshots li { display: inline; }
#sideheadshots li a { float: left; background-repeat:no-repeat; margin: 5px; text-indent:-9999em; height:75px; overflow:hidden; width: 75px; }
.leahead a { background: url(../images/stylists/lea_head.jpg); width: 75px; }
.alanahead a { background: url(../images/stylists/alana_head.jpg); width: 75px; }
.brendahead a { background: url(../images/stylists/brenda_head.jpg); width: 75px; }
.ruthiehead a { background: url(../images/stylists/ruthie_head.jpg); width: 75px; }
.kimhead a { background: url(../images/stylists/kim_head.jpg); width: 75px; }
.nikkihead a { background: url(../images/stylists/nikki_head.jpg); width: 75px; }
.colettehead a { background: url(../images/stylists/colette_head.jpg); width: 75px; }
#sideheadshots li a:hover { background-position:0 -75px; }

#hs_products { background: transparent url(../images/hs_products_bg.gif) 0 0 no-repeat; color: #a5a5a5; height: 200px; margin: 0; padding: 10px; width: 355px; }




.col_bio_pic { float: left; width: 220px; }
.col_bio_copy { float: left; padding: 0 15px 0 27px; width: 250px; }
.col_bio_right { background: url(../images/fashion_services.jpg) 0 0 no-repeat; height: 551px; float: right; width: 287px; }
.col_bio_right h3 { margin: 10px 0 10px 20px; } 

.col_menu_right { background: url(../images/hair_menu_bg.jpg) 0 0 no-repeat; color: #fff; float: right; height: 660px; line-height: 1.6em;padding: 30px 0 30px 10px; width: 267px; }

#fashionservicestop { padding: 5px 0 20px 0; text-align: center; }
#fashionservicestop li { display: inline; font-size: 1.3em; font-weight: 700; }
#fashionservicestop li a { background: url(../images/fashion_seperator.gif) left center no-repeat; color: #f63; padding: 0 10px; }
#fashionservicestop li.first a { background: none; }
#fashionservicestop li a.purple { background: url(../images/fashion_seperator.gif) left center no-repeat; color: #2f0e5c; }

#hairstudiotop { padding: 5px 0 20px 0; text-align: center; }
#hairstudiotop li { display: inline; font-size: 1.3em; font-weight: 700; }
#hairstudiotop li a { background: url(../images/stylists_seperator.gif) left center no-repeat; color: #0cf; padding: 0 10px; }
#hairstudiotop li.first a { background: none; }
#hairstudiotop li a.purple { background: url(../images/stylists_seperator.gif) left center no-repeat; color: #2f0e5c; }

.bluetext { color: #0cf; }

#fashionservicesside li { margin: 5px 23px; }
#fashionservicesside li a { margin: 10px 0; }


.purple { background: inherit; color: #2f0e5c; }
.teal { background: inherit; color: #6c9; }
.caviat { font-size: 0.9em; padding: 5px 0; margin: 5px 25px; width: 165px; }

/* ------------ Tour Studio Slideshow ------------ */
#tour { margin: -30px 0 0 0; }

/* ------------ VIP Parties Slideshow ------------ */
#flashcontent { padding: 0; }
#vipflash { padding: 40px 0 0 105px; }

/* ------------ Contact Form ------------ */
input { border: 1px solid #40137e; -moz-border-radius: 5px; -webkit-border-radius: 5px; padding: 4px; width: 220px; }
input:focus { background-color: #efefef; border: 1px solid #004054; }
textarea{ border: 1px solid #40137e; -moz-border-radius: 5px; -webkit-border-radius: 5px; padding: 4px; width: 220px; }
textarea:focus { background-color: #efefef; border: 1px solid #004054; }
form label { color: #40137e; display: block; float: left; padding-right: 15px; text-align: right; width: 70px; }
div#commentForm { margin: 0 auto; padding-top: 20px; width: 423px; }
form#contactForm { margin: 0 auto; padding-top: 20px; width: 423px; }
input.submit { background: #6c9; border: 1px solid #004054; color: #fff; -moz-border-radius: 5px; -webkit-border-radius: 5px; height: 27px; text-weight: bold; width: 70px; }
p.submitButton{ text-align: center; padding: 7px 14px; }

/* ------------ Footer ------------ */
#footer { background:url(../images/footer_40137e.png) 0 0 repeat-x; height:100px; margin-top: -2px; }
#footer a { color:#fff; text-decoration:none; }
#footer a:hover { text-decoration:underline; }
#footer .nav { float:right; }
#footer .nav li { padding:0 0 0 3px; }
#footer p { line-height: normal; }
#f_content { width:800px; margin:0 auto; color:#fff; font-size:0.85em; padding:20px 0 0; }
#LC { clear:both; float:right; margin:18px 0 0; }
#LC a { position:relative; top:3px; }

#footer a:hover, #bhome #footer a.fhome, #bhair #footer a.fhair, #bfashion #footer a.ffashion,
#bparties #footer a.fparties, #bservices #footer a.fservices, #babout #footer a.fabout, #bcontact #footer a.fcontact { background-color:inherit; color:#f63; text-decoration:none; }

/* ------------ Images ------------ */
img.meetourstylists { height: 15px; margin-left: 50px; width: 118px; }
img.redline { height: 110px; padding: 10px 50px; width: 250px; }
img.kevinmurphy { float: right; height: 147px; width: 96px; }
img.meetoshead { height: 15px; width: 118px; }
img.awardpetaluma360 { float: left; height: 122px; margin: 0 10px 10px 0; width: 118px; }
img.bestofbohemian   { float: left; height: 97px; margin: 0 10px 10px 0; width: 118px; }
img.va { vertical-align: middle; }

/* ------------ Self Clearing Floats ------------ */
#content_main:after,
#content_bio:after,
#content_wrap:after  { content:"."; display:block; height:0; clear:both; visibility:hidden; }

/* These are standard sIFR styles... do not modify */

.sIFR-flash {visibility: visible !important; margin: 0;}
.sIFR-replaced { visibility: visible !important;}
span.sIFR-alternate { position: absolute; left: 0; top: 0; 	width: 0; height: 0; display: block; overflow: hidden;}
/* Hide Adblock Object tab: the text should show up just fine, not poorly with a tab laid over it. */
.sIFR-flash + div[adblocktab=true] { display: none !important;}

/* These "decoy" styles are used to hide the browser text before it is replaced... the negative-letter spacing in this case is used to make the browser text metrics match up with the sIFR text metrics since the sIFR text in this example is so much narrower... your own settings may vary... any weird sizing issues you may run into are usually fixed by tweaking these decoy styles */