/*
 * #01 - Columns
 * #02 - Sections
 * #03 - Lists
 * #04 - Forms
 * #05 - Tables
 * #06 - Other
 */

/* #01 - COLUMNS **************************************************************/

.section
{
	margin-bottom: 24px;
	overflow: hidden; /* contain floats */
	padding-bottom: 1px; /* allow room for link underlines (in all browsers) */
}

.col-ab { float: left;  width: 142px; }
.col-ac { float: left;  width: 219px; }
.col-ad { float: left;  width: 296px; }
.col-ae { float: left;  width: 373px; }
.col-af { float: left;  width: 450px; }
.col-ag { float: left;  width: 527px; }
.col-ah { width: 604px; }
.col-ai { width: 681px; }
.col-ch { float: right;  width: 450px; }
.col-df { float: left;  width: 219px; }
.col-dh { float: right;  width: 373px; }
.col-eh { float: right;  width: 296px; }
.col-fh { float: right;  width: 219px; }
.col-fi { float: right;  width: 296px; }
.col-gh { float: right; width: 142px; }
.col-gi { float: right;  width: 219px; }
.col-hi { float: right;  width: 142px; }

.sidebar /* for content underneath #sidebar */
{
	float: right;
	width: 243px;
}

/* Footer */

#footer .col-ah,
#subfooter .col-ah { float: left;  width: 604px; }
#footer .col-ac { float: left;  width: 219px; }
#footer .col-dh { float: right;  width: 373px; }
#footer .col-il,
#subfooter .col-il { float: right;  width: 296px; }
#subfooter .col-il { text-align: right; }

/* #02 - SECTIONS *************************************************************/

blockquote#zoom-quote { margin-top: 32px; }

img.inline-image { float: left;  margin-right: 12px; }
#appt-btn, #appt-sb-img { float: right;  margin-right: 24px; } 
#appt-div { clear: both;  overflow: hidden; }

/* Sidebar */

#sb-hours
{
	width: 195px;
	float: right;
	margin-right: 24px;
}
#sb-services
{
	clear: both;
	margin: 18px 0 0 36px;
}

.boxed /* e.g. emergency dentist */
{
	border: 1px dashed #ffa700;
	background: #fff6e6;
	margin-bottom: 12px;
	padding: 24px 24px 12px;
	text-align: center;
}

/* Contact us CTA on each page */

.cta-outer, .cta-outer-wide
{
	border: 2px solid #a1cc3a;
	width: 600px;
}
.cta-outer-wide { width: 677px; }
.cta-inner
{
	border: 2px solid #fff;
	width: 596px;
	overflow: hidden;
	padding: 12px 0;
	background: #fff url('../images/cta_bg.gif') 0 0 repeat-x;
}
.cta-outer-wide .cta-inner { width: 673px; }
.cta-left
{
	float: left;
	width: 390px;
	margin-left: 12px;
}
.content .cta-left p { margin: 12px 0 0; }
.content .cta-left p.twoline { margin-top: 3px; }
.cta-right
{
	float: right;
	width: 138px;
	height: 68px;
	margin-right: 12px;
}
body#consultation .cta-outer-wide,
body#warranty .cta-outer-wide { margin-top: 6px; }
body#gallery .cta-outer,
body#photo-tour .cta-outer,
body#rewards .cta-outer-wide { margin-top: 12px; }

#smile-gallery { margin-bottom: 12px; }

/* #03 - LISTS ****************************************************************/

.content ul,
.sidebar #sb-services ul { margin: 4px 0 12px; }
.content ul.spaced li,
.sidebar #sb-services ul.spaced li { margin-bottom: 12px; }

/* #04 - FORMS ****************************************************************/

/* Appointment Form */

form p { margin-bottom: 10px; }

fieldset { border: none;  margin-bottom: 24px; }
fieldset.small-gap { margin-bottom: 12px; }

label
{
	display: inline-block;
	clear: both;
	float: left;
	width: 142px;
}

input { width: 296px; }

textarea { width: 296px; height: 96px; }

p#select-title select { width: 48px; }
p#select-contactby select { width: 142px; }
p#select-findus select { width: 219px; margin-bottom: 12px; }

#submit
{
	width: 166px;
	height: 32px;
	float: right;
	margin-right: 12px;
}

.errorbox
{
	border: 2px solid red;
    background: #ffe5e5;
    font-weight: bold;
	width: 414px; /* 438 - 12 - 12 */
	padding: 12px;
	margin-bottom: 12px;
	overflow: hidden; /* contain floats */
}
.errorbox .icon
{
	float: left;
	width: 54px;
}
.errorbox .message
{
	float: right;
	width: 336px;
}

#captcha { margin-left: 142px;  border: 1px solid #568fb1; }

/* #05 - TABLES ***************************************************************/

table
{
	border: none;
}

#contact-hours
{
	width: 218px;
}

#contact-hours td { width: 109px; } 

/* #06 - OTHER ****************************************************************/

.nudge-top { padding-top: 12px; }