/*	File: style.css			*/
/*  Ver:  2011-10-01        */


/* begin boilerplate reset */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; }
body, button, input, select, textarea { font-family: 'Georgia', serif }

::-moz-selection { background: #9cf; color: #111; text-shadow: none; }
::selection { background: #9cf; color: #111; text-shadow: none; }

a, a:visited, a:hover { color: #666256; text-decoration: none; }
a:focus { outline: none; }
a:hover, a:active { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 0; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol, .nav ul, .nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
table button, table input { *overflow: auto; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }
input:focus { outline: none; }
table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }


/* begin common layout styles */

body {
	background: #f8f7f2 url('/img/body-bg.jpg') repeat 0 0;
	color: #00456a;
	font: normal 106.25%/1.55 'Georgia', serif;
	text-align: center;
	text-shadow: 0 1px 0 #fff;
}

p {
	margin: 0;
}
p + p {
	text-indent: 2em;
}
small {
	font-size: .75em;
}

h1, h2, h3, h4 {
	font: bold 1em/1.55 'Georgia', serif;
	margin: 0;
}
h1, h2 {
	font-size: 1.529em;
	line-height: 1.3;
}
hgroup {
	margin: 0 0 1em;
	text-align: center;
}
hgroup h3 {
	color: #87a9bb;
	font-style: italic;
	font-weight: normal;
}
hgroup h3.tel {
	color: #666256;
	font-size: 1.529em;
	font-style: normal;
	line-height: 1.3;
}

.col,
.left {
	float: left;
}
.right {
	float: right;
}
.nowrap {
	white-space: nowrap;
}

.border {
	background: url('/img/border.png') no-repeat 0 0;
	margin-top: 60px;
	padding-top: 60px;
}
.capsule {
	color: #87a9bb;
	font-style: italic;
	text-align: center;
}
.dropcap {
	color: #87a9bb;
	float: left;
	font-size: 5.35em;
	line-height: .8em;
	padding: 0 4px 0 0;
}
.fleuron {
	margin: 1em 0 0;
	text-align: center;
}


/* begin thank-you styles */

.thank-you p {
	margin: 0 0 1.5em;
	text-indent: 0;
}
.thank-you p:last-child {
	margin: 0;
}


/* begin download styles */

.download-instructions {
	color: #666256;
	font-style: italic;
	margin: 3em 0 0;
}
.download-icons {
	margin: 2.5em 0 0;
}
.download-icons .icon {
	display: block;
	float: left;
	font-style: italic;
	margin: 0 3em 0 0;
}
.download-icons .icon img {
	display: block;
	margin: 0 0 1em -10px;
}

.download-frame {
	border: 0;
	height: 1px;
	margin: 0;
	width: 1px;
	visibility: hidden;
}


/* begin button styles */

.button {
	background: #f1ede7;
	border: 1px solid #fff;
	cursor: pointer;
	display: inline-block;
	font: normal 1em 'Georgia', serif;
	margin: 0;
	padding: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: 0 1px 4px rgba(0,0,0,0.6);
	-moz-box-shadow: 0 1px 4px rgba(0,0,0,0.6);
	box-shadow: 0 1px 4px rgba(0,0,0,0.6);
}
.button .wrap {
	background: #f8f6f3;
	background: -moz-linear-gradient(top, #fff 0%, #f8f6f3 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fff), color-stop(100%, #f8f6f3));
	background: -webkit-linear-gradient(top, #fff 0%, #f8f6f3 100%);
	background: -o-linear-gradient(top, #fff 0%, #f8f6f3 100%);
	background: -ms-linear-gradient(top, #fff 0%, #f8f6f3 100%);
	background: linear-gradient(top, #fff 0%, #f8f6f3 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f8f6f3',GradientType=0 );
	border: 1px solid #ddd9cd;
	display: block;
	padding: 2px 4px;
	text-align: center;
	width: 130px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
}
.button .stitch {
	background: url('/img/stitch.gif') repeat-x 0 0;
	border: none;
	color: #666256;
	display: block;
	font-weight: bold;
	margin: 0;
	padding: 10px;
}
.button input.stitch {
	width: 100%;
}


/* begin standard form styles */

.form-errors {
	color: #c00;
}
.form-errors p {
	margin: 0 0 1em;
}
.error {
	clear: both;
	color: #c00;
	display: none;
	padding: .5em 11px 0;
}
.show-error {
	display: block;
}

.std-form {
	font-size: 100%;
	margin: 0;
}
.std-form .group-col {
	float: left;
	width: 50%;
}
.std-form .form-row {
	margin: 0 0 8px;
}
.std-form .form-col {
	float: left;
	margin: 0 0 0 8px;
}
.std-form .form-row .form-col:first-child {
	margin: 0;
}

.std-form .text {
	background: #fff;
	border: 1px solid #d6d5d2;
	color: #666256;
	display: block;
	font: normal 1.235em 'Georgia', serif;
	height: 54px;
	padding: 0 10px;
	width: 280px;
}

.std-form textarea.text {
	height: auto;
	line-height: 1.3;
	padding: 10px;
	width: 590px;
}
.std-form .text:-moz-placeholder { color: #666256; }
.std-form .text:-ms-input-placeholder { color: #666256; }
.std-form .text::-webkit-input-placeholder { color: #666256; }

.std-form .text.md {
	width: 180px;
}

.std-form .button-row {
	margin-top: 1.5em;
	text-align: center;
}

.js .std-form .wile {
	display: none;
}
.js .std-form label.placeholder {
	display: none;
}

.form-wrap {
	position: relative;
}
.form-wrap .loading {
	background: rgba(255,255,255,0.8);
	display: none;
	height: 100%;
	left: 0;
	position: absolute;
	text-align: center;
	top: 0;
	width: 100%;
}
.form-wrap .loading img {
	padding: 3em 0 1em;
}
.form-wrap .loading p + p {
	text-indent: 0;
}


/* begin fancy form styles */

.std-form div.selector span {
	background-image: url('/img/form-sprite.png');
	background-repeat: no-repeat;
}


/* begin fancy form select styles */

.std-form div.selector {
	color: #666256;
	border: 1px solid #d6d5d2;
	height: 54px;
	position: relative;
}
.std-form div.selector span {
	background: #fff url('/img/form-selector.png') no-repeat 100% 50%;
	display: block;
	float: left;
	height: 54px;
	line-height: 54px;
	padding: 0 20px 0 10px;
	width: 60px;
}
.std-form div.selector span.extra {
	background: none;
	font-size: 1.235em;
	padding: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 60px;
	white-space: nowrap;
}
.std-form div.selector select {
	border: 1px solid #fff;
	font-size: 1em;
	height: 100%;
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.std-form div.selector.disabled {
	opacity: 0.5;
}


/* begin list styles */

.content ul {
	color: #7198ad;
	list-style: none;
	margin: 1.5em 0;
	padding: 0;
}
.content ul li {
	padding: 0 0 0 1em;
	position: relative;
}
.content ul li:before {
	content: '-';
	display: block;
	left: .2em;
	position: absolute;
	top: 0;
}


/* begin testimonial styles */

.slide .testimonial hgroup {
	min-height: 40px;
}
.testimonial + .testimonial {
	margin-top: 2em;
}

.testimonial blockquote {
	font-style: italic;
	position: relative;
}
.testimonial blockquote:after,
.testimonial blockquote:before {
	color: #87a9bb;
	display: block;
	font: italic 5em/1.0 'Georgia', serif;
	position: absolute;
}
.testimonial blockquote:after {
	bottom: -0.6em;
	content: '”';
	right: -0.6em;
}
.testimonial blockquote:before {
	content: '“';
	left: -0.7em;
	top: -0.15em;
}


/* begin article styles */

.article {
	padding-left: 180px;
	padding-right: 160px;
	position: relative;
	width: 620px;
}
.article .section {
	position: relative;
}
.article .border {
	background-position: 48px 0;
}

.article .up {
	position: absolute;
	right: 0;
	top: 50px;
}
.article .section .up {
	right: -160px;
}

.article .ornament {
	position: absolute;
	left: 0;
	top: 240px;
}

.article-hero {
	position: relative;
}
.article-hero .border {
	background-position: 228px 0;
}
.article-hero .hero {
	float: left;
	width: 340px;
}
.article-hero .body {
	float: left;
	width: 460px;
}


/* begin columned styles */

.two-cols .col {
	float: left;
	width: 460px;
	margin: 0 0 0 30px;
}
.two-cols .col:first-child {
	margin: 0 0 0 10px;
}

.three-cols .col {
	float: left;
	width: 300px;
	margin: 0 0 0 20px;
}
.three-cols .col:first-child {
	margin: 0 0 0 10px;
}


/* begin ribbon styles */

.ribbon {
	background: url('/img/ribbon.png') no-repeat 0 0;
	color: #fff;
	font-size: .88em;
	font-style: italic;
	height: 110px;
	padding: 33px 0 0;
	position: absolute;
	right: 20px;
	text-align: center;
	text-shadow: 0 1px 0 rgba(37,62,81,0.75);
	text-transform: lowercase;
	top: -7px;
	width: 112px;
	z-index: 2;
}
.ribbon strong {
	display: block;
	font-size: 1.6em;
}
.ribbon a,
.ribbon a:visited {
	color: #fff;
}


/* begin slideshow styles */

.slideshow-wrap {
	position: relative;
}
.slideshow {
	overflow: hidden;
	position: relative;
}
.slides {
	position: absolute;
	width: 20000em;
	z-index: 1;
}
.slide {
	float: left;
	width: 960px;
}
.slideshow-wrap .navi {
	background: url('/img/border.png') no-repeat 228px 0;
	margin: 90px 0 0;
	padding: 50px 0 0 20px;
}
.slideshow-wrap .navi a {
	background: #fbfaf8;
	color: #87a9bb;
	cursor: pointer;
	display: block;
	float: left;
	font-size: 8px;
	height: 130px;
	margin: 4px 4px 4px 44px;
	overflow: hidden;
	padding: 15px;
	width: 85px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: 0 1px 4px rgba(0,0,0,0.6);
	-moz-box-shadow: 0 1px 4px rgba(0,0,0,0.6);
	box-shadow: 0 1px 4px rgba(0,0,0,0.6);
}
.slideshow-wrap .navi a.active {
	border: 4px solid #00456a;
	margin: 0 0 0 40px;
}
.slideshow-wrap .navi a:first-child {
	margin-left: 4px;
}
.slideshow-wrap .navi a.active:first-child {
	margin-left: 0;
}
.slideshow-wrap .navi a h4 {
	color: #00456a;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.1;
	margin: 0 0 1.2em;
}

.slide hgroup {
	min-height: 65px;
}


/* begin structural styles */

.frame {
	margin: 0 auto;
	text-align: left;
	width: 960px;
}
.content .frame {
	padding: 60px 0 100px;
	position: relative;
}


/* begin header styles */

.header {
	background: #000;
	border: 2px solid #fff;
	border-width: 2px 0;
	height: 567px;
	position: relative;
}
.header .frame {
	background: url('/img/marquee.png') no-repeat 50% 60px;
	height: 567px;
}
.header h1 {
	text-indent: -999em;
}


/* begin nav styles */

.header nav {
	bottom: 0;
	float: left;
	left: 0;
	overflow: hidden;
	padding: 50px 0 31px;
	position: absolute;
	width: 100%;
}
.header nav ul {
	clear: left;
	float: left;
	left: 50%;
	position: relative;
}
.header nav li {
	background: #f1ede7;
	border: 1px solid #fff;
	display: block;
	float: left;
	margin: 0 8px 0 0;
	padding: 4px;
	position: relative;
	right: 50%;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: 0 1px 4px rgba(0,0,0,0.6);
	-moz-box-shadow: 0 1px 4px rgba(0,0,0,0.6);
	box-shadow: 0 1px 4px rgba(0,0,0,0.6);
}
.header nav li:last-child {
	margin: 0;
}
.header nav a {
	background: #f8f6f3;
	background: -moz-linear-gradient(top, #fff 0%, #f8f6f3 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fff), color-stop(100%, #f8f6f3));
	background: -webkit-linear-gradient(top, #fff 0%, #f8f6f3 100%);
	background: -o-linear-gradient(top, #fff 0%, #f8f6f3 100%);
	background: -ms-linear-gradient(top, #fff 0%, #f8f6f3 100%);
	background: linear-gradient(top, #fff 0%, #f8f6f3 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f8f6f3',GradientType=0 );
	border: 1px solid #ddd9cd;
	display: block;
	float: left;
	padding: 2px 4px;
	text-align: center;
	width: 133px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
}
.header nav .stitch {
	background: url('/img/stitch.gif') repeat-x 0 0;
	display: block;
	padding: 10px;
}
.header nav em {
	color: #bdb8b0;
	display: block;
	font-size: 0.647em;
	line-height: 1.0;
}
.header nav strong {
	display: block;
	line-height: 1.0;
}
.header nav .icon {
	background: url('/img/nav-sprite.png') no-repeat 50% 0;
	display: none;
	height: 14px;
	margin: 3px 0 0;
}

.header nav .active a,
.header nav a:hover {
	background: #fff;
}
.header nav .active .stitch,
.header nav a:hover .stitch {
	padding: 10px 10px 4px;
}
.header nav .active em,
.header nav a:hover em {
	display: none;
}
.header nav .active .icon,
.header nav a:hover .icon {
	display: block;
}

.header nav .nav-meet.active .icon,
.header nav .nav-meet a:hover .icon {
	background-position: 50% -20px;
}
.header nav .nav-practice.active .icon,
.header nav .nav-practice a:hover .icon {
	background-position: 50% -40px;
}
.header nav .nav-testimonials.active .icon,
.header nav .nav-testimonials a:hover .icon {
	background-position: 50% -60px;
}
.header nav .nav-path.active .icon,
.header nav .nav-path a:hover .icon {
	background-position: 50% -80px;
}


/* begin home styles */

#home .header {
	background: url('/img/home/header.jpg') repeat-x 50% 0;
	border-top: none;
	height: 468px;
}
#home .header .frame {
	background: none;
	height: 468px;
}
#home .header h1 {
	background: url('/img/logo.png') no-repeat 0 0;
	height: 324px;
	margin: 0 auto;
	width: 792px;
}


/* begin meet styles */

#meet .header {
	background: url('/img/meet/header.jpg') repeat-x 50% 0;
}
#meet .article-hero hgroup {
	text-align: left;
}
#meet .article-hero h2 .title {
	font-style: italic;
	font-weight: normal;
}


/* begin practice styles */

#practice .header {
	background: url('/img/practice/header.jpg') repeat-x 50% 0;
}


/* begin path styles */

#path .header {
	background: url('/img/path/header.jpg') repeat-x 50% 0;
}
#path .content .frame {
	padding-bottom: 70px;
}


/* begin testimonials styles */

#testimonials .header {
	background: url('/img/testimonials/header.jpg') repeat-x 50% 0;
}
#testimonials .slideshow-wrap .navi {
	padding-left: 105px;
}


/* begin find-us styles */

#find-us hgroup {
	margin: 0 0 0.75em;
}
#find-us h2 {
	background: url('/img/path/house.png') no-repeat 50% 0;
	height: 122px;
	margin: 3.6em 0 0;
	text-indent: -999em;
}
#find-us blockquote {
	color: #87a9bb;
	font-style: italic;
	margin: 0;
	text-align: center;
}


/* begin insurance styles */

#insurance {
	background: #012e46 url('/img/footer-bg.png') repeat-x 0 0;
	border-top: 2px solid #fff;
	color: #fff;
	text-shadow: 1px 1px 1px #000;
}
#insurance .frame {
	padding-bottom: 20px;
}
#insurance h1 {
	color: #87a9bb;
	margin: 0 0 2em;
}
#insurance .up {
	top: 0;
	text-shadow: 0 1px 0 #fff;
}


/* begin footer styles */

#footer {
	background: #012e46;
	color: #fff;
	font-size: 0.647em;
	padding: 0 0 24px;
	text-shadow: 1px 1px 1px #000;
}
#footer a,
#footer a:visited,
#footer a:hover {
	color: #87a9bb;
	text-decoration: underline;
}
#footer .colophon {
	float: left;
	line-height: 2.0;
}
#footer .social {
	float: right;
}


/* begin overlay elements */

.overlay {
	background: #f1ede7;
	border: 1px solid #fff;
	display: none;
	padding: 4px;
	position: relative;
	width: 610px;
	z-index: 10000;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-box-shadow: 0 1px 4px rgba(0,0,0,0.6);
	-moz-box-shadow: 0 1px 4px rgba(0,0,0,0.6);
	box-shadow: 0 1px 4px rgba(0,0,0,0.6);
}
.overlay-wrap {
	background: #fff;
	border: 1px solid #ddd9cd;
	padding: 2px 4px;
	text-align: left;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.overlay-wrap .close {
	color: #4a88a7;
	cursor: pointer;
	font-size: 1.059em;
	font-style: italic;
	position: absolute;
	right: 25px;
	text-decoration: underline;
	top: 30px;
	z-index: 10001;
}

.overlay .overlay-content {
	background: url('/img/stitch.gif') repeat-x 0 0;
	padding: 18px;
}
.overlay .overlay-content a,
.overlay .overlay-content a:visited {
	color: #4a88a7;
	text-decoration: underline;
}
.overlay .overlay-content .thank-you {
	padding: 0 70px 0 0;
}

.overlay .std-form div.selector span {
	background-color: #fbfaf8;
}
.overlay .std-form .text {
	background: #fbfaf8;
	width: 260px;
}
.overlay .std-form .text.md {
	width: 160px;
}
.overlay .std-form hgroup {
	text-align: left;
}
.overlay .std-form hgroup h3 {
	color: #4a88a7;
	font-size: 1.059em;
}
.overlay .std-form .book {
	margin: 4px 0 0;
}


/* begin clearing styles */

fieldset:after,
.form-row:after,
.row:after,
.frame:after,
.group:after {
	clear: both;
	content: ' ';
	display: block;
	height: 0;
	visibility: hidden;
}

