/*
  style.css contains a reset, font normalization and some base styles.

  credit is left where credit is due.
  additionally, much inspiration was taken from these projects:
    yui.yahooapis.com/2.8.1/build/base/base.css
    camendesign.com/design/
    praegnanz.de/weblog/htmlcssjs-kickstart
*/

/*
  html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)
  v1.4 2009-07-27 | Authors: Eric Meyer & Richard Clark
  html5doctor.com/html-5-reset-stylesheet/
*/

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, caption, article, aside, figure, footer, header, hgroup, menu, nav, section, menu, time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
article, aside, figure, footer, header, hgroup, nav, section {
	display:block;
}
blockquote, q {
	quotes:none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content:'';
	content:none;
}
a {
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	cursor:pointer;
}
ins {
	background-color:#146bbc;
	color:#000;
	text-decoration:none;
}
mark {
	background-color:#146bbc;
	color:#000;
	font-style:italic;
	font-weight:bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom:1px dotted #000;
	cursor:help;
}
hr {
	display:block;
	height:1px;
	border:0;
	border-top:1px solid #ccc;
	margin:1em 0;
	padding:0;
}
input, select {
	vertical-align:middle;
}
/* ------------------------------ END RESET CSS -------------- */

/*
fonts.css from the YUI Library: developer.yahoo.com/yui/
          Please refer to developer.yahoo.com/yui/fonts/ for font sizing percentages

There are three custom edits:
 * remove arial, helvetica from explicit font stack
 * make the line-height relative and unit-less
 * remove the pre, code styles
*/
body {
	font:13px sans-serif;
 *font-size:small;
 *font:x-small;
	line-height:1.22;
	background: url(/images/bg.jpg) repeat-x center top #0d4478;
	background-attachment: scroll;
}
table {
	font-size:inherit;
	font:100%;
}
select, input, textarea {
	font:99% sans-serif;
}
/* normalize monospace sizing
 * en.wikipedia.org/wiki/MediaWiki_talk:Common.css/Archive_11#Teletype_style_fix_for_Chrome
 */
pre, code, kbd, samp {
	font-family: monospace, sans-serif;
}
/* * minimal base styles  */

/* #444 looks better than black: twitter.com/H_FJ/statuses/11800719859 */
body, select, input, textarea {
	color:#444;
	font-family: Arial, Helvetica, sans-serif;
}
/* Headers (h1,h2,etc) have no default font-size or margin,
   you'll want to define those yourself. */

/* www.aestheticallyloyal.com/public/optimize-legibility/ */
h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
	text-rendering: optimizeLegibility;
}
/* maxvoltar.com/archive/-webkit-font-smoothing */
html {
	-webkit-font-smoothing: antialiased;
}
/* Accessible focus treatment: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active {
	outline: none;
}
a, a:active, a:visited {
	color:#146bbc;
	text-decoration: none;
	font-weight: bold;
}
a:hover {
	color:#0a3257;
}
small {
	font-size:85%;
}
strong, th {
	font-weight: bold;
}
td, td img {
	vertical-align:top;
}
sub {
	vertical-align: sub;
	font-size: smaller;
}
sup {
	vertical-align: super;
	font-size: smaller;
}
pre {
	padding: 15px;
	/* www.pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap/ */
  white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}
/* align checkboxes, radios, text inputs with their label
   by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css  */
input[type="radio"] {
	vertical-align: text-bottom;
}
input[type="checkbox"] {
	vertical-align: bottom;
*vertical-align: baseline;
}
.ie6 input {
	vertical-align: text-bottom;
}
/* hand cursor on clickable input elements */
label, input[type=button], input[type=submit], button {
	cursor: pointer;
}
/* These selection declarations have to be separate.
   No text-shadow: twitter.com/miketaylr/status/12228805301
   Also: hot pink. */
::-moz-selection {
background: #146bbc;
color:#fff;
text-shadow: none;
}
::selection {
background:#146bbc;
color:#fff;
text-shadow: none;
}
/*  j.mp/webkit-tap-highlight-color */
a:link {
	-webkit-tap-highlight-color: #146bbc;
}
/* always force a scrollbar in non-IE */
html {
	overflow-y: scroll;
}
/* make buttons play nice in IE:
   www.viget.com/inspire/styling-the-button-element-in-internet-explorer/ */
button {
	width: auto;
	overflow: visible;
}
/* bicubic resizing for non-native sized IMG:
   code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */
.ie7 img {
	-ms-interpolation-mode: bicubic;
}
/*
 * Non-semantic helper classes
 */

/* for image replacement */
.ir {
	display:block;
	text-indent:-999em;
	overflow:hidden;
	background-repeat: no-repeat;
}
/* Hide for both screenreaders and browsers
   css-discuss.incutio.com/wiki/Screenreader_Visibility */
.hidden {
	display:none;
	visibility:hidden;
}
/* Hide only visually, but have it available for screenreaders
   www.webaim.org/techniques/css/invisiblecontent/
   Solution from: j.mp/visuallyhidden - Thanks Jonathan Neal! */
.visuallyhidden {
	position:absolute !important;
	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
}
/* Hide visually and from screenreaders, but maintain layout */
.invisible {
	visibility: hidden;
}
/* >> The Magnificent CLEARFIX << */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
* html .clearfix {
	height: 1%;
} /* Hides from IE-mac \*/
.clearfix {
	display: block;
}
/* -------------------------------------------------------------- LAYOUT ------------------------------------------------- */
#container {
	background: url(/images/bg-tile.png) repeat-y center top;
	background-attachment: scroll;
	width: 1024px;
	position: relative;
	margin: 0 auto;
	z-index: 0;
	min-height: 420px;
}
#container .left {
	float: left;
	width: 689px;
	text-align: left!important;
	margin: 30px 0 30px 30px;
}
#container .right {
	float: left;
	width: 260px;
	margin:72px 0;
}
#container .full {
	background: url(/images/bg-home-full.jpg) no-repeat;
	float: left;
	width: 966px;
	height: 300px;
	text-align: left!important;
	margin:0 30px;
}
header {
	width: 966px;
	height: 120px;
}
#bg-right-col {
	background: url(/images/bg-tile-col.png) repeat-y center top;
	width: 1024px;
	min-height: 420px;
}
.logo a {
	width: 392px;
	height: 66px;
	background: url(/images/logo.jpg) no-repeat;
	z-index: 99;
	position: absolute;
	top: 0;
	left: 32px;
	text-indent: -999em;
	text-decoration: none;
	overflow: hidden;
	display: block;
	outline: 0;
}
.logo a:hover {
	background: url(/images/logo_o.jpg) no-repeat;
}
/* ------------ MENU--------------- */
ul#menu {
	padding: 0;
	margin:0;
	position:absolute;
	top: 72px;
	left: 29px;
	z-index: 11;
}
ul#menu li {
	list-style-type: none;
	float: left;
}
ul#menu li a {
	margin: 0;
	padding: 0;
	display: block;
	height: 48px;
	background: url(/images/menu.png) no-repeat;
	text-indent: -999em;
	font-size: 0;
	overflow: hidden;
}
/* ------- MENU BTTNS ----------------- */
ul#menu li#heating a {
	width: 83px;
	background-position: 1px 0;
}
ul#menu li#ac a {
	width: 151px;
	background-position: -82px 0;
}
ul#menu li#boilers a {
	width: 81px;
	background-position: -233px 0;
}
ul#menu li#airquality a {
	width: 166px;
	background-position: -314px 0;
}
ul#menu li#waterheaters a {
	width: 135px;
	background-position: -480px 0;
}
ul#menu li#new a {
	width: 164px;
	background-position: -615px 0;
}
ul#menu li#commercial a {
	width: 189px;
	background-color: #072544;
	background-position: -779px 0;
}
/* ------ MENU HOVERS -------------------- */
ul#menu li#heating a:hover {
	width: 83px;
	background-position: 1px -48px;
}
ul#menu li#ac a:hover {
	width: 151px;
	background-position: -82px -48px;
}
ul#menu li#boilers a:hover {
	width: 81px;
	background-position: -233px -48px;
}
ul#menu li#airquality a:hover {
	width: 166px;
	background-position: -314px -48px;
}
ul#menu li#waterheaters a:hover {
	width: 135px;
	background-position: -480px -48px;
}
ul#menu li#new a:hover {
	width: 164px;
	background-position: -615px -48px;
}
ul#menu li#commercial a:hover {
	width: 189px;
	background-position: -779px -48px;
}
/* -- CURRENT PAGE MENU IDs for body tag --- */
#heatingpage ul#menu li#heating a {
	width: 83px;
	background-position: 1px -48px;
}
#acpage ul#menu li#ac a {
	width: 151px;
	background-position: -82px -48px;
}
#boilerspage ul#menu li#boilers a {
	width: 81px;
	background-position: -233px -48px;
}
#airqualitypage ul#menu li#airquality a {
	width: 166px;
	background-position: -314px -48px;
}
#waterheaterspage ul#menu li#waterheaters a {
	width: 135px;
	background-position: -480px -48px;
}
#newpage ul#menu li#new a {
	width: 164px;
	background-position: -615px -48px;
}
#commercialpage ul#menu li#commercial a {
	width: 189px;
	background-position: -779px -48px;
}
/* -------------- Small menu at the top of each page -------------- */
ul#topmenu {
	padding: 0;
	margin:0;
	position:absolute;
	top: 20px;
	right: 32px;
	z-index: 11;
}
ul#topmenu li {
	list-style-type: none;
	float: left;
	margin: 0 3px;
	padding: 0;
	display: inline;
	height: 20px;
	font-size: 10px;
}
ul#topmenu li a {
	color: #0a3257;
}
ul#topmenu li a:hover {
	color: #146bbc;
}
/* ------------------------ General TEXT STYLES ------------------ */
header h3 {
	font-size: 18px!important;
	padding: 0;
	margin:0;
	position:absolute;
	top: 40px;
	right: 34px;
	color: #0a3257;
}
#container .full h1 {
	font-size: 30px!important;
	width:530px;
	font-weight: normal;
	margin:16px;
}
#container .full p {
	width:510px;
	margin:8px 16px;
	font-size: 14px;
	font-weight: normal;
	line-height: 20px;
}
#container h1 {
	color: #0a3257;
	font-size: 36px!important;
	font-weight: normal;
	margin-left: 28px;
	margin-bottom: 8px;
	padding-right: 16px;
}
#container h2 {
	color: #0a3257;
	font-size: 18px!important;
	font-weight: normal;
	margin-left: 28px;
	margin-bottom: 4px;
	padding-right: 8px;
}
#container ul.list {
	font-size:12px!important;
	line-height: 18px;
	color: #0a3257;
	padding-left: 64px;
	max-width: 500px;
}
#container ul.list li{
	margin-bottom: 8px;
}
#container ol.list {
	font-size:12px!important;
	line-height: 18px;
	color: #0a3257;
	margin-left: 64px;
}
#container .left p {
	font-size:12px!important;
	line-height: 18px;
	color: #0a3257;
	margin:0 16px 8px 30px;
	width:600px;
}
#container .right p {
	margin:0 4px;
}
#bg-right-col p.red {
	font-size: 18px!important;
	line-height: 22px;
	color:#d01f25!important;
	list-style-type:none!important;
	margin: 16px 28px;
	padding-bottom: 16px;
}
p.tiny {
	font-size: 10px!important;
	font-weight: normal!important;
}
.redtext {
	color: #d01f25;!important
}
.coupon {
	background: #f5f5f5;
	border: dashed 3px #999;
	padding: 8px;
	margin: 30px;
	width: 560px;
}
ul.cities  {
	float: left;
	width: 160px;
	margin-bottom: 16px;
}
ul.cities li {
	list-style-type: none;
	line-height: 22px;
}
/* ------------------ MISC HOMEPAGE STYLES ---------------------------- */
#icon {
	background: url(/images/icons.png) no-repeat #fff;
	width: 50px;
	height: 50px;
	border: 0;
	outline: 0;
	margin:16px 0;
	display:inline-block;
	text-align:left;
	overflow:hidden;
	font-size: 18px!important;
	line-height: 22px;
	font-weight: normal;
}
#icon.specials {
	background-position: 0px 0px;
	float: left;
}
#icon.plans {
	background-position: 0px -50px;
	float: left;
}
#icon.emergency {
	background-position: 0 -100px;
	float: left;
}
#icon.servicearea {
	background-position: 0 -150px;
	float: left;
}
.homecallout {
	float: left;
	width: 160px;
	height: 174px;
	border-right: 1px solid #ccc;
	color: #0a3257;
	margin: 16px 4px;
	padding: 0 8px;
}
.homecallout h4 {
	font-size: 16px;
}
.homecallout p {
	color: #2f3031;
}
/* ------- Interior LANDING PAGE Callout Area 2 Bullet lists -----------------------*/
#container .callout {
	background: url(/images/bg-left-callout.jpg) no-repeat;
	width: 676px;
	height: 476px;
	float: left;
	margin-top: 8px;
	padding-top: 16px;
	position:relative;
}
.callout ul {
	float: left;
	width: 320px;
	margin: 14px 9px 0 0;
}
.callout li {
	margin:0 0 10px 38px;
	list-style-type:disc!important;
	font-size: 12px;
	line-height: 16px;
}
.callout li.red {
	font-size: 18px!important;
	font-weight: bold;
	color:#d01f25!important;
	list-style-type:none!important;
}
.callout h2.red {
	width: 600px;
	font-size: 18px!important;
	font-weight: bold;
	color:#d01f25!important;
	position:absolute;
	left: 56px;
	bottom: 38px;
}
/* ------ Right Col Image -------------- */
.right img {
	margin: 8px 0;
}
/* ---------------- Testimonials Container for .right ------------------------------ */
#tsml {
 width: 268px;
 float: left;
 font-size: 12px;
 color: #cce1f4;
}
#tsml .top {
	background: url(/images/testimonials_top.png) no-repeat;
	height:52px;
}
#tsml .tile {
	position: relative;
	background: url(/images/testimonials_tile.png) repeat-y;
	padding-left: 12px;
	padding-right: 8px;
	text-shadow: #0a3257 1px 1px 1px;
	letter-spacing: .02em;
	line-height: 15px;
}
#tsml .tile span {
	position: absolute;
	bottom:0;
	right:16px;
	font-weight: bold;
	color: #b7cadb;
}
#tsml .bttm {
	background: url(/images/testimonials_bttm.png) no-repeat;
	height:56px;
	padding:17px 34px;
}
#tsml .bttm a {
	background: url(/images/bttn-outline.png) no-repeat;
	background-position: -2px -8px;
	height:56px;
	color: #146bbc;
	font-size: 16px;
	padding-left: 16px!important;
}
#tsml .bttm a:hover {
	color: #0a3257;
}
/* ------------------------------------------------ BUTTONS ------------------------ */
.right a.bttn {
	background: url(/images/bttn-outline.png) no-repeat;
	background-position: 0 0;
	width: 242px;
	height:18px;
	font-size:16px;
	font-weight:normal;
	color: #146bbc;
	padding:7px 0 8px 18px;
	display: block;
	float: left;
	margin: 2px 2px;
}
.right a:hover.bttn {
	color: #0a3257;
}
.right a.bttn.on {
	color: #0a3257!important;
	background-color: #fff;
}
a.hm-bttn {
	background: url(/images/bttn-outline.png) no-repeat;
	background-position: 0 -34px;
	width: 250px;
	height:14px;
	font-size:12px;
	font-weight:normal;
	color: #2f3031;
	padding:7px 0 8px 18px;
	display: block;
	float: left;
	margin: 4px 0;
}
a:hover.hm-bttn {
	color: #d01f25;
}
a.hm-bttn-lrg {
	background: url(/images/bttn-outline.png) no-repeat;
	background-position: 0 -62px;
	width: 250px;
	height:14px;
	font-size:12px;
	font-weight:normal;
	color: #2f3031;
	padding:7px 0 8px 18px;
	display: block;
	float: left;
	margin: 4px 0;
}
a:hover.hm-bttn-lrg {
	color: #d01f25;
}
a.request {
	background: url(/images/bttn-fill.png) no-repeat;
	background-position: 0 0;
	width: 396px;
	height: 42px;
	margin: 8px 0 0 -8px;
	padding: 0;
	text-indent: -999em;
	text-decoration: none;
	overflow: hidden;
	display: block;
	outline: 0;
	float: left;
}
a:hover.request {
	background-position: 0 -42px;
}
/* ----------------------------------------- FOOTER ---------------------------------- */
footer {
	background: url(/images/footer.png) no-repeat center top;
	text-align: center;
	font-size: 10px;
	color: #fff!important;
	margin: 0 auto;
	padding:32px 26px;
	height: 300px;
	width: 966px;
	position:relative;
}
footer p {
	clear: both;
	float: left;
	margin:20px 0 0 20px;
	text-align: left;
	font-size: 13px;
	font-weight: bold;
	color: #b7cadb!important;
}
footer a {
	color:#b7cadb!important;
	padding: 0 2px;
	font-size: 12px!important;
	font-weight: normal;
}
footer a:hover {
	color:#fff!important;
}
footer ul {
	border-right: 1px solid #3d6891;
	list-style: none;
	float: left;
	padding: 0 20px;
	color: #b7cadb;
	text-align: left;
}
footer li {
	display: block;
	line-height: 20px;
}
footer p.tiny {
	margin: 6px 20px;
	font-size: 11px;
	line-height: 14px;
	width:600px!important;
}
footer .bbb a {
	width: 56px;
	height: 100px;
	z-index: 99;
	position: absolute;
	bottom: 212px;
	right: 44px;
	text-indent: -999em;
	text-decoration: none;
	overflow: hidden;
	display: block;
	outline: 0;
}
footer .angieslist a {
	width: 100px;
	height: 100px;
	z-index: 99;
	position: absolute;
	bottom: 212px;
	right: 420px;
	text-indent: -999em;
	text-decoration: none;
	overflow: hidden;
	display: block;
	outline: 0;
}
footer .cred a{
	color:#b7cadb!important;
	position: absolute;
	bottom:62px; right:22px;
	font-size: 10px!important;
	font-weight: normal!important;
	line-height: 14px;
}
/* -----------------------------------------------------------------------------------
 * print styles
 * inlined to avoid required HTTP connection www.phpied.com/delay-loading-your-print-css/
 */
@media print {
* {
	background: transparent !important;
	color: #444 !important;
	text-shadow: none;
}
a, a:visited {
	color: #444 !important;
	text-decoration: underline;
}
a:after {
	content: " (" attr(href) ")";
}
abbr:after {
	content: " (" attr(title) ")";
}
.ir a:after {
	content: "";
}  /* Don't show links for images */
pre, blockquote {
	border: 1px solid #999;
	page-break-inside: avoid;
}
img {
	page-break-inside: avoid;
}
 @page {
margin: 0.5cm;
}
p, h2, h3 {
	orphans: 3;
	widows: 3;
}
h2, h3 {
	page-break-after: avoid;
}
}
/*
 * Media queries for responsive design
 */

@media all and (orientation:portrait) {
/* Style adjustments for portrait mode goes here */

}
 @media all and (orientation:landscape) {
/* Style adjustments for landscape mode goes here */

}

/* Grade-A Mobile Browsers (Opera Mobile, iPhone Safari, Android Chrome)
   Consider this: www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/ */
@media screen and (max-device-width: 480px) {


  /* Prevent iOS, WinMobile from adjusting font size */
  html {
-webkit-text-size-adjust:none;
-ms-text-size-adjust:none;
}
}

/* Form Errors  */

.errors {
	margin-left:30px;
	margin-bottom:20px;
	color: #D01F25 !important;
	font-size: 14px !important;
	font-weight: bold;
}

.errors p{
	margin-left:0px !important;
}

.checkbox {

}



