/* !Reset */
html, body { padding: 0; margin: 0; }
body { font-size: 12px; color: #333; font-family: helvetica, arial, 'sans serif'; min-width: 940px; }

h1, h2, h3, h4, h5, h6, p { margin-top: 0; }

pre { font-size: 10px; line-height: 80%; }

/* !Clear Fix */
.clearfix:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }
.clearfix { display: inline-block; }
html[xmlns] .clearfix { display: block; }
* html .clearfix { height: 1%; }

/* !Framework */
.half { width: 45%; }
.fullwidth { width: 100%; display: block; clear: both; }
.left { float: left; }
.right { float: right; }

fieldset { border: 0 none; padding: 0; margin: 0; }
.form { padding: 29px; border: 1px solid #ccc; }
legend, h2.legend { font-size: 125%; margin: 0 0 20px; color: #999; }
.form .required-notice { text-align: right; color: #9F1372; font-weight: bold; margin-bottom: 0; margin-top: -10px; }
.form .required { color: #9F1372; }
.form .field { margin-bottom: 10px; }
.form .field label { display: block; padding: 10px 0 4px; font-size: 1.167em; }
.form .field .text, .form .field .txt { width: 95%; padding: 5px; border: 1px solid #c3c3c3; border-bottom: 1px solid #ddd;  }
.form input[type=submit] { margin-left: 145px; }

.button { background: linear-gradient(top, #f5f5f5 0%, #A9A9A9 100%); background: -moz-linear-gradient(top, #f5f5f5 0%, #A9A9A9 100%); background: -webkit-linear-gradient(top, #f5f5f5 0%, #A9A9A9 100%); border: 0 none; padding: 8px 22px 5px; border-radius: 18px; box-shadow: 0 1px 2px 0px rgba(0,0,0,0.7); text-shadow: 0 1px 1px rgba(255,255,255,0.8); color: #333; font-weight: bold; font-family: helvetica, arial, 'sans-serif'; font-size: 1em; text-decoration: none; }

.contactform .submit { text-align: right; margin-top: 15px; }

.center, .centre { text-align: center; }
p { line-height: 130%; margin: 0 0 10px; }
ul { list-style: none; padding-left: 0; }
.copy ul { list-style: disc outside none; padding-left: 30px; }

/* !Messages */
#messages p { padding: 8px 8px 7px 32px; font-weight: bold; line-height: 16px; background: url(/images/messageicons.png) no-repeat; }
#messages .ok { background-color: #D7EFDF; background-position: 3px 2px; }
#messages .info { background-color: #D6E0F5; background-position: 3px -24px; }
#messages .error { background-color: #F5CCCC; background-position: 3px -50px; }

/* !Base Styles */
#container, .container { width: 920px; margin: 0 auto; display: block; padding: 0 10px; }
#header { margin-top: 40px; width: 100%; }
.decor { background: url(/images/homedecor.png) no-repeat; }
p.decor { text-indent: -9999px; overflow: hidden; }
.description { color: #999; margin-top: -15px; margin-bottom: 20px; }

/* !Header */
#fullheader { height: 91px; width: 100%; margin: 0; background-position: 0 -53px; background-repeat: repeat-x; }
#fullheader .logo { float: left; background-position: 0 0; text-indent: -9999px; width: 209px; height: 50px; margin-top: 20px; }
#fullheader .headline { width: 221px; height: 29px; margin: 0px auto 0; display: block; padding-top: 30px; }
#fullheader .headline p { background-position: -358px 0; width: 221px; height: 29px; }

#logo { float: left; }
#header { margin-bottom: 15px; width: 100%; }
#header .contact-info .details { float: left; margin-left: 50px; text-align: right;}
#header .contact-info .details .business-website { font-size: 1.75em; font-weight: normal; margin-bottom: 15px; }
#header .contact-info .details .business-email { font-size: 1.25em; font-weight: normal; }
#header .contact-info .details .business-phone { font-size: 2em; }

#header .contact-info .address { font-size: 1.167em; }
#header .contact-info .address .business-title { margin-bottom: 12px; }

/* !Body */
#body { width: 100%; }
#body .panel-left { width: 575px; }
#body .panel-right { width: 320px; }

/* !Directory */
.directory .pagetitle { margin-top: 30px; margin-bottom: 30px; }
.directory .sites .site { padding-bottom: 15px; border-bottom: 1px solid #eaeaea; margin-bottom: 30px; width: 100%; min-height: 130px; position: relative; }
.directory .sites .logo { margin-right: 20px; margin-bottom: 10px; width: 240px; }
.directory .sites .logo img { max-width: 100%; }
.directory .sites .content { width: 660px; }
.directory .sites .title { margin-top: 0; }
.directory .sites .title a { color: #9F1372; text-decoration: none; border-bottom: 1px dotted #ccc; }
.directory .sites .title a:hover { border-bottom: 1px solid #9F1372; }
.directory .sites .button { position: absolute; left: 5px; bottom: 20px; }

/* !Homepage */
.panel-left .copy { margin-bottom: 35px; font-size: 1.0833em; }

.products .type-title { font-size: 2em; color: #333; font-weight: bold; }
.products .row { margin-bottom: 30px; }
.products .listing .item { float: left; width: 160px; border-right: 1px solid #D7D7D7; margin-right: 30px; position: relative; }
.products .listing .item .title { font-size: 1.5em; color: #333; font-weight: bold; }
.products .listing .item .options { font-size: 1em; margin-bottom: 90px; }
.products .listing .item .options li { margin-bottom: 5px; }
.products .listing .item .price { position: absolute; left: 0px; bottom: 40px; font-size: 1.167em; }
.products .listing .item .info { position: absolute; left: 0px; bottom: 0; }
.products .listing .item .info a { display: block; }
.products .listing .row-end { border-right: 0 none; }

.visit-title { font-size: 2em; }
.visit-details li { margin-bottom: 30px; }
.visit-details li .title { font-size: 1.333em; color: #666; margin-bottom: 0px; }
.visit-details li .item { font-size: 1.75em; }
.visit-details .map .item iframe { width: 100%; }
.visit-details .map small a { color: #333 !important; }

/* !Product Page */
#productpage #header { height: 91px; width: 100%; margin: 0 0 35px; background-position: 0 -53px; background-repeat: repeat-x; }
#productpage #logo { background-position: 0 0; text-indent: -9999px; width: 209px; height: 50px; margin-top: 20px; }
#productpage #header .headline { width: 221px; height: 29px; margin: 0px auto 0; display: block; padding-top: 30px; }
#productpage #header .headline p { background-position: -358px 0; width: 221px; height: 29px; }

#productpage .page-title { font-size: 2.1667em; color: #9F1372; }
#productpage .title-description { font-size: 1.5em; margin-top: -10px; }

#body .productpage .panel-left { width: 500px; padding-right: 20px; }
#body .productpage .panel-right { width: 384px; }

.productpage .availability { margin-bottom: 20px; }
.productpage .availability .stores { list-style: disc outside none; padding-left: 20px; font-size: 1.167em; }

.productpage .options-panel .title { font-size: 1.167em; }
.productpage .options-panel .options { font-size: 1.167em; text-transform: capitalize; }
.productpage .options-panel .options .item { border: 1px solid #d7d7d7; border-bottom: 0 none; padding: 10px 20px; }
.productpage .options-panel .options .end { border-bottom: 1px solid #d7d7d7; }

.productpage .content .copy { padding-left: 10px; font-size: 1.167em; }

.productpage .bottom { margin-top: 50px; }

.productpage .suppliers {}
.productpage .suppliers .title { font-size: 14px; font-weight: bold; padding-left: 10px; margin-bottom: 20px; }
.productpage .suppliers .description { font-size: 14px; padding-left: 10px; margin-bottom: 20px; }

.productpage .suppliers .list .item { border: 1px solid #D7D7D7; padding: 20px; height: 175px; width: 423px; margin-bottom: 20px; margin-top: 7px; font-size: 1em; position: relative; }
.productpage .suppliers .list .selected { border: 0 none; width: 423px; height: 175px; background: url(/images/homedecor.png) no-repeat 100% -216px; padding: 22px 56px 24px 21px; margin-bottom: 17px; margin-top: 6px; }
.productpage .suppliers .list .item .price-tag { position: absolute; right: 15px; top: -7px; text-indent: 0px; background-position: 0px -154px; width: 100px; height: 18px; font-size: 1.4167em; text-align: center; display: block; padding: 10px 15px 18px 19px; color: #666; font-weight: bold; text-shadow: 0px 1px 1px #fff; }
.productpage .suppliers .list .selected .price-tag { right: 51px; top: -5px; }
.productpage .suppliers .list .item .more { position: absolute; left: 20px; margin: 0; bottom: 25px; }
.productpage .suppliers .list .selected .more { left: 21px; bottom: 29px; }

.productpage .suppliers .list .item a { color: #333; text-decoration: none; }
.productpage .suppliers .list .item .left { width: 230px; }
.productpage .suppliers .list .item .logo { max-width: 162px; margin-bottom: 10px; }
.productpage .suppliers .list .item .site { font-size: 1.333em; }
.productpage .suppliers .list .item .email { font-size: 1.167em; }

.productpage .suppliers .list .item .right { text-align: right; }
.productpage .suppliers .list .item .phone { font-size: 2em; font-weight: bold; margin-top: 25px; }
.productpage .suppliers .list .item .business-title { font-size: 1.167em; font-weight: bold; margin-bottom: 2px; }
.productpage .suppliers .list .item .business-address { font-size: 1.083em; margin-bottom: 0; }

.productpage .contactform { }
.productpage .contactform .title { margin-bottom: 20px; margin-top: 0px; font-size: 1.167em; }


/* !Footer */
#footer .decorgraphic { clear: both; margin-top: 0; }
#footer .decorgraphic .footer-logo { float: left; }
#footer .decorgraphic .powered { margin: 16px 15px; float: left; color: #666; }

