/*--------------------- Last Modified  2006.11.10 ---------------------*/
/*-------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------
  Copyright Einstein Industries 2006. Used with Permission.                             
  May not be duplicated or reproduced.
  Please check for cross-browser compatibility prior to making changes
  MINIMUM BROWSER CHECK :: IE5.x/IE6/Firefox/Safari
  CSS Document - layout.css
/*-------------------------------------------------------------------------------------*/
/* undo some default styling of common (X)HTML browsers
/*------------------------------------------------------------------------------------*/

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,th,td,html,label,table,tr,td {margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img,a img,:link img,:visited img {border:0;}
address,caption,cite,code,dfn,th,var {font-style:normal;font-weight:normal;}
ol,ul {list-style:none;}
caption,th {text-align:left;}
h1,h2,h3,h4,h5,h6 {font-size:100%;}
q:before,q:after {content:'';}


/* global elements
 * ------------------------------------------------------------------------- */


/* ----- type selectors ----- */ 
body { 
	background-color:#658BB2;
	text-align:center; 
	font:12px/18px Arial, Helvetica, sans-serif; 
	color:#132A55;
	}

blockquote { 
	margin-left:25px; 
	margin-right:25px; 
	}

h1	{ font-size:1.2em; color:#132A55; }
h2	{ font-size:1.1em; color:#132A55; }
h3	{ font-size:1.0em; color:#132A55; }

h1 span,h2 span,h3 span	{ display:none; }

a:link,a:visited	{ color:#132A55; text-decoration:underline; outline:none; }
a:hover,a:active	{ color:#132A55; text-decoration:none; outline:none; }

/* ----- classes ----- */

.clear {
	clear:both;
	}

div.clear	{ 
	height:.01em; 
	overflow:hidden; 
	}

p.back-to-top {
	text-align:right;
	display:block;
	background:url("../images/bullet-back-to-top.gif") top right no-repeat;
	padding-right:15px;
	}
	
img.img-left { 
	float:left; 
	margin:5px 10px 0 10px; 
	}
	
img.img-right { 
	float:right; 
	margin:5px 30px 5px 10px; 
	}

.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
	}
	
/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
/* End hide from IE-mac */
	
/* ----- global form elements ----- */ 

form {
	width:193px;
	margin:0 0 15px 0;
	}

form label	{ font-size:.95em; }

form br { line-height:0; height:0; } /* defaults vertical spacing between fields */

input, textarea, select { 
	background-color:#E8EDF1 !important; /* to prevent highlighting by Google Toolbar */
	border:1px solid #C3C6C8;
	color:#07305A;
	width:188px; /* 5 pixels smaller than form width !important */
	height:18px;
	line-height:18px;
	vertical-align: middle;
	margin-bottom:4px; /* sets vertical spacing between fields */
	padding-top:1px; /* vertically position text in input/textarea field */
	padding-left:4px; /* horizontally position text in input/textarea field */
	font-family:Arial, Helvetica, sans-serif; 
	font-size:11px;
	}
	
select { width:193px; padding:0; } /* same width as form - !important */

textarea { height:90px; overflow:auto; }

#contact-business { display: none; } /* do not remove */ 


/* ----- main contact form ----- */ 
 
#contact-main { margin:20px 0 10px 0; }

#contact-main label { 
	width:220px; 
	position:relative; 
	display:block; 
	text-align:right; 
	margin-bottom:10px;
	font-size:1.0em;
	}
	
#contact-main label input, #contact-main label textarea, #contact-main label select { 
	width:170px;
	position:absolute; 
	left:110%; 
	top:-2px;
	}
	
#contact-main label select { width:177px; }
	
#contact-main label textarea { height:100px; overflow:auto; }

#contact-business-main { display: none; } /* do not remove */ 


/* ----- submit button form elements ----- */ 

input.submit, input.submit-contact-main { 
	width:60px;
	height:20px;
	cursor:pointer; 
	padding:0; 
	}

input.submit-contact-main { margin:85px 0 5px 243px; }

input.submit, input.submit-contact-main { /* REMOVE IF NOT USED */
	background:url("../images/btn-submit.jpg");
	width:59px;
	height:17px;
	border:none;
	cursor:pointer;
	}


/* framework
 * ------------------------------------------------------------------------- */
#bg-wrap { 
	width:100%;
	background:#fff url("../images/bg-body.jpg") top repeat-x;
	}
	
#wrap {
	width:900px;
	margin:0 auto;
	text-align:left;
	}
	
#bg-gradient {
	background:url("../images/bg-wrap.jpg") no-repeat;
	width:900px;
	}
	
#masthead {
	position:relative;
	background:url("../images/masthead.jpg");
	height:125px;
	width:536px;
	float:left;
	}
	/* index page link within #masthead */		
	#masthead a {	
		position:absolute;
		left:20px;
		width:385px;
		top:22px;
		height:66px; 
		}
	#masthead a span {
		display:none;
		}

/* ----- column-left ----- */

#column-left {
	width:260px;
	float:left;
	}
	
	#column-left p, #column-left h1, #column-left h2, #column-left h3, #column-left ul, #column-left dl {
		margin:0 29px 20px 40px;
		}
	#column-left form { margin-left:40px; }
	
	/* single column list */
	#column-left ul { padding-left:5px; }
		#column-left ul li { 
			background:transparent url("../images/bullet.jpg") 0px 6px no-repeat;
			padding-left:10px; /* pushes text to the right to display bg img */
			}
			
	#column-left ul li ul { margin:0 0 0 5px; }
	
	/* definition list */
	#column-left dl { padding-left:5px; }
		#column-left dl dt {
			font-weight:bold;
			}
		#column-left dl dd {
			background:transparent url("../images/bullet.jpg") 0px 6px no-repeat;
			padding-left:10px;  /* pushes text to the right to display bg img */
			margin-left:5px;
			}
			
			
/* ----- column-right ----- */

#column-right {
	width:640px;
	float:left;
	}

	#column-right p, #column-right h1, #column-right h2, #column-right h3, #column-right ul, #column-right dl {
		margin:0 27px 20px 10px;
		}
		
	#column-right p.name {
	font-style:italic;
	margin-left:450px;
	margin-top:-20px;
	}
		
		
	#column-right form { margin-left:0px; }
	 
	/* single column list */
	#column-right ul { padding-left:5px; }
		#column-right ul li { 
			background:transparent url("../images/bullet.jpg") 0px 6px no-repeat;
			padding-left:10px;  /* pushes text to the right to display bg img */
			}

	#column-right ul li ul { margin:0 0 0 5px; }
	
	/* definition list */
	#column-right dl { padding-left:5px; }
		#column-right dl dt {
			font-weight:bold;
			}
		#column-right dl dd {
			background:transparent url("../images/bullet.jpg") 0px 6px no-repeat;
			padding-left:10px;  /* pushes text to the right to display bg img */
			margin-left:5px;
			}
	
#col-welcome {
	width:310px;
	float:left;
	}
	
	#column-right #col-welcome p, #column-right #col-welcome h1, #column-right #col-welcome h2, #column-right #col-welcome h3, #column-right #col-welcome ul, #column-right #col-welcome dl {
		margin:0 13px 20px 10px;
		}

#col-about {
	width:330px;
	float:left;
	}

	#column-right #col-about p, #column-right #col-about h1, #column-right #col-about h2, #column-right #col-about h3, #column-right #col-about ul, #column-right #col-about dl {
		margin:0 18px 20px 15px;
		}

#bg-banner {
	background:url("../images/bg-banner.jpg");
	width:640px;
	margin-bottom:20px;
	position:relative;
	}
		
#banner {
	background:url("../images/banner.jpg") no-repeat;
	width:640px;
	height:99px;
	position:relative;
	margin-bottom: 20px;
	}
	
	#banner p {
		left:500px;
		top:52px;
		position:absolute;
		width:107px;
		}
	
/* ----- bottom-wrap ----- */
 
#bottom-wrap {
	height:1px;
	clear:both;
	width:100%; 
	}

	
/* header framework
 * ------------------------------------------------------------------------- */

#header-graphic { height:176px; background:url("../images/header-graphic.jpg"); } 

/* subhead framework
 * ------------------------------------------------------------------------- */

#subhead { height:62px; } /* sets height for all non-flash subheads */

	body#index #subhead { background:url("../images/subhead-index.jpg"); }
	body#about #subhead { background:url("../images/subhead-dr-leblanc.jpg"); }
	body#office #subhead { background:url("../images/subhead-office.jpg"); }
	body#contact #subhead { background:url("../images/subhead-contact.jpg"); }
	body#thankyou #subhead { background:url("../images/subhead-thankyou.jpg"); }
	body#sitemap #subhead { background:url("../images/subhead-sitemap.jpg"); }

	body#crowns #subhead { background:url("../images/subhead-crowns.jpg"); }
	body#bridges #subhead { background:url("../images/subhead-bridges.jpg"); }
	body#veneers #subhead { background:url("../images/subhead-veneers.jpg"); }
	body#whitening #subhead { background:url("../images/subhead-whitening.jpg"); }
	body#implants #subhead { background:url("../images/subhead-implants.jpg"); }
	body#reconstruction #subhead { background:url("../images/subhead-reconstruction.jpg"); }
	body#sedation #subhead { background:url("../images/subhead-sedation.jpg"); }
	body#tmj #subhead { background:url("../images/subhead-tmj.jpg"); }
	body#technology #subhead { background:url("../images/subhead-technology.jpg"); }
	body#powerlase #subhead { background:url("../images/subhead-powerlase.jpg"); }
	body#imaging #subhead { background:url("../images/subhead-imaging.jpg"); }
	body#testimonials #subhead { background:url("../images/subhead-testimonials.jpg"); }
	body#gallery #subhead { background:url("../images/subhead-gallery.jpg"); }

/* ------------------------ title framework with varying heights ------------------------- */
#title-qcontact {
	height:62px;
	background:url("../images/title-qcontact.jpg") ;
	}

body#contact #title-qcontact, body#thankyou #title-qcontact {
	height:62px;
	background:url("../images/title-locate.jpg") ;
	}

#title-state {
	height:62px;
	background:url("../images/title-state.jpg") ;
	}
	
	
img.img-article {
	margin: -20px 0 30px 80px;
	}

/* footer
 * ------------------------------------------------------------------------- */
#footer {
	background:url("../images/bg-footer.jpg") repeat-x;
	width:100%;
	padding-top:29px;
	}
 
#footer-wrap {
	width:900px;
	margin:0 auto;
	text-align:center;
	color:#fff;
	}
	
#footer a { color:#fff; }

#footer-wrap p, #footer-wrap ul {
	margin:0 20px 20px 20px;
	}


#footer li { /* if your li's float, you can adjust border height w/ line-height */
	padding:0 5px 0 7px;
	display: inline;
	border-left: 1px solid #fff;
	}

	#footer li.first { border: none; }

/* Horizontal Sprite Nav
 * ------------------------------------------------------------------------- */

#nav { 
	background:url("../images/nav.jpg") no-repeat; 
	width:900px; 
	height:44px; 
	margin:0;
	padding:0; 
	}

#nav span { display: none; }

#nav li, #nav a { height:44px; display:block; } /* change height here also */

#nav li { float:left; list-style:none; _display:inline; position:relative; }

#nav-01 { width: 111px; margin-left: 0px;}
#nav-02 { width: 114px; margin-left: 2px;}
#nav-03 { width: 111px; margin-left: 2px;}
#nav-04 { width: 81px; margin-left: 2px;}
#nav-05 { width: 106px; margin-left: 2px;}
#nav-06 { width: 109px; margin-left: 2px;}
#nav-07 { width: 142px; margin-left: 2px;}


/*-------------- (-79px) X position of button / (-44px) height of image from above ------------- */
li#nav-01:hover { background:url("../images/nav.jpg")  0px -44px no-repeat; }
li#nav-02:hover { background:url("../images/nav.jpg") -113px -44px no-repeat; }
#nav-03 a:hover { background:url("../images/nav.jpg") -229px -44px no-repeat; }
li#nav-04:hover { background:url("../images/nav.jpg") -342px -44px no-repeat; }
#nav-05 a:hover { background:url("../images/nav.jpg") -425px -44px no-repeat; }
#nav-06 a:hover { background:url("../images/nav.jpg") -533px -44px no-repeat; }
#nav-07 a:hover { background:url("../images/nav.jpg") -644px -44px no-repeat; }


/*-------------- OPTIONAL - Keeps the hover state on each page based on body #id ------------- */
body#cosmetic li#nav-01 { background:url("../images/nav.jpg")  0px -44px no-repeat; }
body#restorative li#nav-02 { background:url("../images/nav.jpg") -113px -44px no-repeat; }
body#sedation #nav-03 { background:url("../images/nav.jpg") -229px -44px no-repeat; }
body#tmj #nav-04 { background:url("../images/nav.jpg") -342px -44px no-repeat; }
body#technology li#nav-05 { background:url("../images/nav.jpg") -425px -44px no-repeat; }
body#testimonials #nav-06 { background:url("../images/nav.jpg") -533px -44px no-repeat; }
body#gallery #nav-07 { background:url("../images/nav.jpg") -644px -44px no-repeat; }

/* Son of Suckerfish: Horizontal Sprite nav
 * ------------------------------------------------------------------------- */

#nav li ul {
	position:absolute;
	left:-9999px;
	padding-right:1px;			/* Fixes one px spacing for border-right in FF */
	background-color:#FFF;	/* Background color of drop down nav - add more styles (i.e. background image) if you want */
	margin-top:44px;
	}
	
#nav li#nav-05 ul {
	margin-top:0px;
	}
	
#nav li ul li { 
	height:20px; 				/* Height of each drop down nav item */
	border:1px solid #132A55;
	border-top:none;
	}	

#nav li ul li a {
	width:100%;
	height:20px;				/* Height of each drop down nav item, should match above */
	line-height:20px;			/* Height of each drop down nav item again, should match above */
	}

#nav li ul li a span {
	display:block;
	padding-left:5px;
	}

/* Drop down link styles */
#nav a:link, #nav a:visited, #nav a:hover, #nav a:active {
	font-size:1.0em;
	color:#132A55;
	text-decoration:none;
	}

#nav li:hover ul, #nav li.sfHover ul	{ left: auto; }

/* Hover styles for drop down items */
#nav-01 ul a:hover, #nav-02 ul a:hover, #nav-05 ul a:hover { 
	background-image:none;
	background-color:#A7BCCD;
	color:#132A55;
	text-decoration:none;
	}

/* width of drop down nav - choose width that allows items to display on one line */
#nav-01 ul, #nav-01 li { width:150px; }		
#nav-02 ul, #nav-02 li { width:220px; }		
#nav-05 ul, #nav-05 li { width:165px; }		


/* Horizontal Sprite nav-top
 * ------------------------------------------------------------------------- */

#nav-top { 
	background:url("../images/nav-top.jpg") no-repeat; 
	width:364px; 
	height:125px; 
	margin:0;
	padding:0;
	float:left;
	}

#nav-top span { display: none; }

#nav-top li, #nav-top a { height:125px; display:block; } /* change height here also */

#nav-top li { float:left; list-style:none; _display:inline; position:relative; }

#nav-top-01 { width: 64px; margin-left: 16px;}
#nav-top-02 { width: 68px; margin-left: 2px;}
#nav-top-03 { width: 119px; margin-left: 2px;}
#nav-top-04 { width: 81px; margin-left: 2px;}

/*-------------- (-79px) X position of button / (-125px) height of image from above ------------- */
#nav-top-01 a:hover { background:url("../images/nav-top.jpg")  -16px -125px no-repeat; }
li#nav-top-02:hover { background:url("../images/nav-top.jpg")  -82px -125px no-repeat; }
#nav-top-03 a:hover { background:url("../images/nav-top.jpg") -152px -125px no-repeat; }
#nav-top-04 a:hover { background:url("../images/nav-top.jpg") -273px -125px no-repeat; }

body#index #nav-top-01 { background:url("../images/nav-top.jpg")  -16px -125px no-repeat; }
body#about li#nav-top-02 { background:url("../images/nav-top.jpg")  -82px -125px no-repeat; }
body#contact #nav-top-04 { background:url("../images/nav-top.jpg") -273px -125px no-repeat; }

/* Son of Suckerfish: Horizontal Sprite nav-top
 * ------------------------------------------------------------------------- */

#nav-top li ul {
	position:absolute;
	left:-9999px;
	padding-right:1px;			/* Fixes one px spacing for border-right in FF */
	background-color:#FFF;	/* Background color of drop down nav-top - add more styles (i.e. background image) if you want */
	margin-top:125px;
	}

#nav-top li ul li { 
	height:20px; 				/* Height of each drop down nav-top item */
	border:1px solid #132A55;
	border-top:none;
	}	

#nav-top li ul li a {
	width:100%;
	height:20px;				/* Height of each drop down nav-top item, should match above */
	line-height:20px;			/* Height of each drop down nav-top item again, should match above */
	}

#nav-top li ul li a span {
	display:block;
	padding-left:5px;
	}

/* Drop down link styles */
#nav-top a:link, #nav-top a:visited, #nav-top a:hover, #nav-top a:active {
	font-size:1.0em;
	color:#132A55;
	text-decoration:none;
	}

#nav-top li:hover ul, #nav-top li.sfHover ul	{ left: auto; }

/* Hover styles for drop down items */
#nav-top-02 ul a:hover { 
	background-image:none;
	background-color:#A7BCCD;
	color:#132A55;
	text-decoration:none;
	}

/* width of drop down nav-top - choose width that allows items to display on one line */
#nav-top-02 ul, #nav-top-02 li { width:80px; }		

