@charset "UTF-8";
/* CSS Document */

* { margin:0; padding:0; }
body { background:#ddd; color:#333; font-family:Arial, Helvetica, sans-serif; font-size:62.5%; line-height:1; }
img, object, embed { border:0; display:block; }
h1, h2, h3, h4, h5, h6 { font-size:100%; font-weight:normal; }
ul, ol { list-style:none outside none; }
a { text-decoration:none; }
fieldset { border:0; }

#container { background:#fff; margin-left:auto; margin-right:auto; width:960px; }

#header { height:100px; position:relative; }
#logo, #telephone-info { bottom:10px; position:absolute; }
#logo { left:20px; }
#telephone-info { right:20px; text-align:right; }
#telephone-info .number { font-size:3em; margin-bottom:5px; }
#telephone-info .text { font-size:1.7em; }

#nav {}
#nav ul { background:url(images/nav-background.png); height:30px; }
#nav li { display:inline; }
#nav a { color:#fff; display:inline; float:left; font-size:1.4em; height:30px; line-height:30px; padding:0 15px; }
#nav a:hover { color:#ccc; }

#sub-nav { margin-bottom:20px; }
#sub-nav h2 a { color:#e79; font-size:1.7em; margin-bottom:5px; }
#sub-nav h2 a:hover { color:#e25; }
#sub-nav a { color:#666; font-size:1.25em; line-height:1.6; }
#sub-nav a:hover { color:#000; }
#sub-nav .active a { font-weight:bold; }
#sub-nav ul ul { display:none; margin-left:10px; }
#sub-nav .active ul { display:block; }
#sub-nav .active ul a { font-weight:normal; }
#sub-nav .active .active a { font-weight:bold; }

#flash-banner { height:220px; }

#large-nav, #large-nav a { height:65px; }
#large-nav a { background:url(images/large-nav.png); color:transparent; display:block; float:left; font-size:0; }
#large-nav .book { background-position:0 0; width:427px; }
#large-nav .book:hover { background-position:0 -100%; }
#large-nav .call { background-position:-427px 0; width:188px; }
#large-nav .call:hover { background-position:-427px -100%; }
#large-nav .request { background-position:-615px 0; width:345px; }
#large-nav .request:hover { background-position:-615px -100%; }

.nav-buttons { margin-bottom:20px; }
.nav-buttons a { background:url(images/nav-buttons.png); color:transparent; display:block; font-size:0; height:30px; margin-bottom:5px; width:200px; }
.nav-buttons .book { background-position:0 0; }
.nav-buttons .book:hover { background-position:0 -100%; }
.nav-buttons .call { background-position:0 -200%; }
.nav-buttons .call:hover { background-position:0 -300%; }
.nav-buttons .request { background-position:0 -400%; }
.nav-buttons .request:hover { background-position:0 -500%; }
.content .nav-buttons { height:30px; margin-left:-5px; margin-top:20px; width:615px; }
.content .nav-buttons a { display:inline; float:left; margin-bottom:0; margin-left:5px; }

#body { background:url(images/shadow-top.png) repeat-x top left; }
#body-top, #body-middle { margin-left:20px; margin-right:20px; padding-bottom:20px; padding-top:20px; }
#body-top { background:url(images/body-top-background.png) repeat-x bottom left; margin-bottom:20px; }

.shadow-bottom, .shadow-top { background:url(images/shadow-bottom.png) repeat-x top left; clear:both; font-size:0; height:5px;  }
.shadow-top { background-image:url(images/shadow-top.png); }

#breadcrumbs { color:#666; line-height:1.6; margin-bottom:15px; }
#breadcrumbs a { color:#666; }
#breadcrumbs a:hover { color:#000; }

/* ### Featured products ### */
#featured-products-heading { color:#666; font-size:2.2em; line-height:35px; }
.featured-products .product { background:url(images/featured-product-background.png); padding-top:15px; }
.featured-products .product .inner { background:url(images/featured-product-bottom.png) no-repeat bottom left; padding:0 15px 10px; }
.featured-products .product .image { margin-bottom:10px; }
.featured-products .product .image img { height:auto; width:240px; }
.featured-products .product .name { font-size:1.6em; font-weight:bold; }
.featured-products .product .text { font-size:1.3em; line-height:1.2; margin:4px 0; }
.featured-products .product .link { font-size:1.4em; font-weight:bold; line-height:1.3; }
.featured-products .product .link a { background:url(images/featured-products-link.png) no-repeat center right; color:#333; padding-right:20px; }
.featured-products .product .link a:hover { text-decoration:underline; }
.featured-products-thin { margin-bottom:20px; }
.featured-products-thin .product { background-image:url(images/featured-product-thin-background.png); margin-bottom:10px; }
.featured-products-thin .product .inner { background-image:url(images/featured-product-thin-bottom.png); }
.featured-products-thin .product .inner img { width:170px; }

/* ### Treatments ### */
#treatments-heading { margin-left:20px; }
.treatments { background:url(images/treatments-background.png); padding-top:20px; }
.treatments .inner { background:url(images/treatments-bottom.png) no-repeat bottom; padding:0 20px 10px 0; }
.treatments h3 { color:#666; font-size:1.6em; font-weight:bold; margin-bottom:15px; margin-left:20px; }
.treatment { background:url(images/treatment-button.png); float:left; height:40px; margin-bottom:10px; margin-left:20px; overflow:hidden; padding:5px 10px; width:265px; }
.treatment .name { color:#e79; font-size:1.6em; font-weight:bold; line-height:1.3; }
.treatment .summary { color:#666; font-size:1.3em; line-height:1.3; }
.treatment:hover { background-position:0 -100%; }
.treatment:hover .name, .treatment:hover .summary { color:#fff; }
.treatments-wide { background:url(images/treatments-wide-background.png); }
.treatments-wide .inner { background-image:url(images/treatments-wide-bottom.png); padding-left:10px; }
.treatments-wide .treatment { background-image:url(images/treatment-wide-button.png); height:60px; margin-left:10px; width:148px; }
.treatments-wide .treatment .name { font-size:1.5em; line-height:1; height:30px; }
.treatments-wide .treatment .summary { line-height:1; margin-top:2px; }

/* ### Latest videos ### */
#latest-videos-heading { color:#666; font-size:2.2em; line-height:35px; }
#latest-videos {}
.latest-video { background:url(images/body-top-background.png) repeat-x bottom left; margin-bottom:20px; padding-bottom:10px; }
.latest-video .video { background:url(images/video-background.png); margin-bottom:10px; padding-top:15px; }
.latest-video .inner { background:url(images/video-bottom.png) no-repeat bottom left; padding:0 15px 15px; }
.latest-video .text { margin:0 15px; }
.latest-video h3 { color:#6cf; font-size:1.7em; line-height:1.3; }
.latest-video p { font-size:1.4em; line-height:1.3; }

#banner { border:1px solid #999; margin-bottom:20px; overflow:hidden; }
#banner img { margin-left:-1px; }

.content {}
.content img { display:inline; }
.content h1, .content h2, .content h3, .content h4, .content h5, .content h6 { margin:0.75em 0 0.5em; }
.content h1 { color:#666; font-size:3.5em; margin-top:0; }
.content h2 { font-size:2.6em; }
.content h3 { font-size:1.8em; }
.content h4, .content h5, .content h6 { font-size:1.6em; font-weight:bold; }
.content p, .content li, .content th, .content td, .content .errors { font-size:1.3em; line-height:1.4; }
.content p, .content ul, .content ol, .content table, .content .errors, .content .nav-buttons { margin-bottom:1.5em; }
.content ul, .content ol { margin-left:2em; margin-right:2em; }
.content ul { list-style-type:square; }
.content ol { list-style-type:decimal; }
.content li { margin:0.1em 0; }
.content li li { font-size:100%; }
.content ul ul { margin-bottom:0px; }
.content a { color:#e79; }
.content a:hover { color:#e25; }
.content table { width:100%; }
.content th p, .content td p { font-size:100%; margin:1em 0; }
.content .errors { color:#f00; }

.price-list { border-collapse:collapse; }
.price-list th, .price-list td { font-weight:normal; padding:10px; text-align:left; }
.price-list thead th { padding-bottom:0; padding-top:0; white-space:nowrap; }
.price-list thead p, .price-list tbody p { margin:0; }
.price-list thead tr { background:url(images/table-heading-background.png); height:40px; line-height:40px; }
.price-list thead .name { color:#fff; font-size:1.8em; }
.price-list thead .price { color:#fff; font-size:1.6em; width:80px; }
.price-list thead .offer { color:#e27; font-size:1.4em; font-weight:bold; text-transform:uppercase; width:120px; }
.price-list tbody tr { background:url(images/body-top-background.png) repeat-x bottom left; }
.price-list tbody td { border-left:1px solid #ccc; border-right:1px solid #ccc; }
.price-list .price, .price-list .offer { text-align:center; }

.form label, .form .text, .form textarea, .form fieldset,
.form .checkbox, .form .radio, .form .verimage, .form .submit,
.form br { float:left; font:13px Arial, Helvetica, sans-serif; margin:5px 0; padding:2px; }
.form label { margin:5px 0; width:250px; }
.form .text, .form textarea { border:1px solid #ccc; width:394px; }
.form fieldset { width:400px; }
.form fieldset label { margin:1px 0; padding:0; width:400px; }
.form .checkbox, .form .radio { margin:1px 10px 0 0; }
.form .verimage { border:1px solid #ccc; padding:0; }
.form br { clear:left; }

#footer { background:url(images/footer-background.png); color:#fff; height:115px; line-height:1.3; padding:15px 20px 0; }
#footer li { display:inline; margin-right:10px; }
#footer li a, #footer p a { color:#fff; }
#footer li a:hover, #footer p a:hover { border-bottom:1px dotted #fff; }
#footer .left p, #footer .images { margin-bottom:10px; }
#footer img { display:inline; margin-right:10px; }

.centre { display:block; margin-left:auto; margin-right:auto; }
.clear { clear:both; }
.left, .right { display:inline; }
.left { float:left; }
.right { float:right; }
.width-700 { width:700px; }
.width-630 { width:630px; }
.width-410 { width:410px; }
.width-270 { width:270px; }
.width-200 { width:200px; }