/* ---------------Global Styles--------------- */
a { color: #0099cc; text-decoration: none; }
a:hover { text-decoration: underline; }
a:visited { }

h1 { color: #33ccff; font:bold 31px Georgia, serif; margin: 10px 0px 0px 0px; }
h2 { color: #000066; font:bold 15px Georgia, serif; margin: 0px 0px 10px 0px; }
h3 { color: #000066; font-size: 12px; font-weight: bold; }
h4 { color: #000; font-size: 12px; font-weight: bold;  }

.subheading { display:block; color: #fff; font:bold 15px Georgia, serif; width:415px; background: #65c9f2; text-transform:uppercase; }

html, input, select { font: normal 13px Georgia, "Times New Roman", Times, serif; color: #333; }
form, input { padding:0; margin:0; }

img { border: 0; }

#page { margin:0; background: #fff url(graphics/design/page_bg.jpg) repeat-x left 375px; }
#pageInt { margin:0; background: #fff url(graphics/design/page_bg_int.jpg) repeat-x left top; }

.canvas { clear: both;  width: 820px; margin:0 auto; }
.canvas:after { content: " "; display: block; height: 0; clear: both; visibility: hidden; } 
.photoLeft {float: left; padding: 10px 10px 10px 0px;}
.photoRight {float: right; padding: 10px 0px 10px 10px;}

/* --------------- Header Home Styles --------------- */
#header { background: #fff url(graphics/design/content_bg.jpg) repeat-y left top; height: 382px; }

#header #logo { height: 382px; width:798px; margin: 0px 11px; background: #fefefe url(graphics/design/header_bg.jpg) no-repeat left top; }
#header #logo a { width: 798px; height: 382px; display: block; background: transparent;}
#header h1 { display: none; }

#headerBottom { background: transparent; height: 142px; }
.fadeBg { background: transparent url(graphics/design/content_bg_fade.jpg) no-repeat top left; height:8px; line-height:8px; font-size:1px; }
#dwyerAwards { margin:0 auto; width: 366px; height: 103px; display: block; background: transparent url(graphics/design/dwyer_awards.jpg) no-repeat left center; }

#headerMenu { background: transparent url(graphics/design/content_bg_fade.jpg) repeat-y top left; height: 29px; margin-top:2px; }

/* --------------- Header Interior Styles --------------- */
#headerInt { background: #eaf0fc; height: 175px; }

#headerInt #logo { height: 175px; width:798px; margin: 0px 11px; background: transparent url(graphics/design/header_bg_int_nodate.jpg) no-repeat left top; }
#headerInt #logo a { width: 798px; height: 175px; display: block; background: transparent;}
#headerInt h1 { display: none; }

#headerBottomInt { background: transparent; height: 100px; }
#dwyerAwardsInt { margin:0 auto; width: 192px; height: 47px; display: block; background: transparent url(graphics/design/dwyer_awards_int.jpg) no-repeat top left; }

#headerMenuInt { background: transparent url(graphics/design/content_bg_fade.jpg) repeat-y top left; height: 25px; margin-top:2px; }

/* --------------- Content Styles --------------- */
#content { background: #fff url(graphics/design/content_bg.jpg) repeat-y left top; min-height:400px; }
* html #content { height: 400px; }
#contentTop { background: #fff url(graphics/design/content_bg_tp.jpg) repeat-y left top; height:25px; }
#content .center { width: 437px; padding:8px; margin:0 auto; border-right:1px solid #004863; border-left:1px solid #004863; }

.homeContentBreak { width:455px; height:5px; line-height:5px; font-size:1px; background:#034567; margin:5px auto 0px auto; }

/* --------------- Content Interior Styles --------------- */
#contentInt { background: #fff url(graphics/design/content_bg_int.jpg) repeat-y left top; min-height:400px; }
* html #contentInt { height: 400px; }
#contentInt .left { width: 555px; padding:0px 12px 0px 37px; margin:0 auto; float:left; }
#contentInt .right { width: 189px; padding:0px 27px 0px 0px; margin:0 auto; float:right; text-align:center; }

#contentInt .center { width: 744px; margin:0px 39px 0px 37px; background: #fefefe; min-height:400px; }
* html #contentInt .center { height: 400px; }

.intContentBreak { width:100%; height:5px; line-height:5px; font-size:1px; background:#034567; margin:5px auto 0px auto; clear:both; }

/* --------------- Footer Styles --------------- */
#footer { height: 246px; background:transparehnt; }
#footer .left { width: 555px; padding:0px 12px 0px 37px; float:left; text-align:center; }
#footer .right { width: 189px; padding:0px 27px 0px 0px; float:right; text-align:center; }



/* ---------------General Module Styles--------------- */
.itemCount { }
.itemList { clear: both; } 
.itemList:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.itemList h2 a { text-decoration: none; }
.itemList h2 a:hover { text-decoration: underline; }
.itemList span { display: block; }
.itemLabel { font-weight: bold; }
.itemList span.itemLabel { display: inline; }
.bottomNavigation { clear: both; }
.goBack { }
.errorMessage{ font-weight:bold; color:#f00; }


/* ---------------News Module Styles--------------- */
.newsListHeadlineTD { }
.newsListHeadline { font: bold 15px Georgia, serif; color: #0068a8; }
.newsListPublishline { font: normal 9px Georgia, serif; color: #000000; }
.newsListBlurb {}
.newsListMoreLink {}

.datebox { font-weight:bold; }


/* ---------------Search Styles--------------- */
#search { float: right; padding-right: 5px; }
#search .queryLabel { float: left; font:bold 11px Georgia, serif; color: #ffffff; margin: 5px 3px 0px 0px; }
#search .searchInput { float: left; margin: 3px 0px; }
#search .submit { float: left; margin: 5px 0px 0px 2px; }


/* ---------------Event Styles--------------- */
.eventHeadlineTD { }
.eventHeadline { color: #6989c4; font-weight: bold; }
.eventDetail { }
.eventMoreLink { }
.eventDateHeader { }

/* Month at a Glance */
.calendarWrapper table { width: 100%; table-layout: fixed; }
.calendarWrapper a { text-decoration: none; }
.calendarWrapper a:hover { text-decoration: underline; }
.calendarWrapper .calendarMonths { background-color: #4e2e92; text-align: center;  vertical-align: middle; }
.calendarWrapper .calendarMonths a { display: block; color: #ffffff; font-weight: bold; font-size: 12px; text-decoration: none; padding: 5px 0px 5px 0px; }
.calendarWrapper .calendarMonths a:hover { background-color: #99cd00; color: #ffffff; }
.calendarWrapper .calendarDays { border-collapse: collapse; table-layout: fixed; }
.calendarWrapper .calendarDays .title { font-size: 14px; font-weight: bold; color: #333333; padding: 10px 0px 10px 0px; }
.calendarWrapper .calendarDays .title a { font-size: x-small; }
.calendarWrapper .calendarDays .prevLink, .calendarWrapper .calendarDays .nextLink { background: #bbb; }
.calendarWrapper .calendarDays .normal { display: none; }
.calendarWrapper .calendarDays td { text-align: center; border: 1px solid #000000; font-weight: bold; }
.calendarWrapper .calendarDays .weekdays { height: 30px; background-color: #0067a9; color: #ffffff; }
.calendarWrapper .calendarDays .emptyDay { height: 60px; text-align: left; vertical-align: top; background-color: #eeeeee; }
.calendarWrapper .calendarDays .eventToday { height: 60px; text-align: left; vertical-align: top; background-color: #4e2e92; padding-left: 5px; color: #ffffff; }
.calendarWrapper .calendarDays .eventOff { height: 60px; text-align: left; vertical-align: top; padding-left: 5px; }
.calendarWrapper .calendarDays .eventOn { height: 60px; text-align: left; vertical-align: top; background-color: #0067a9; padding-left: 5px; color: #ffffff; }
.calendarWrapper .calendarDays .eventOn a { color: #ffffff; }

/* Calendar Starts */
#calendar { font-size: 12px; background: #620094; }
.cal { padding: 5px; text-align: center; margin-left: auto; margin-right: auto; background: #620094; }
.calPrev { position: absolute; top: 4px; left: 15px; }
.calNext { position: absolute; top: 4px; right: 15px; }
.calMonth { position: relative; top: 0; left: 0; text-align: center; font-weight: bold; margin-left: 20px; margin-right: 20px; }
.calPrev a, .calNext a, .calMonth a { text-decoration: none; color: #ffffff; }
.calPrev a:hover, .calNext a:hover, .calMonth a:hover { text-decoration: underline; }
.calGrid { margin-top: 10px; clear: both; width: 75%; text-align: center; margin-left: auto; margin-right: auto; }
.calGrid td { font-size: 8pt; padding-bottom: 2px; text-align: center; color: #ffffff; }
.calGrid tr.calWeek { font-weight: bold; text-align: center; }
.calDayOn a { color: #ffffff; font-weight: bold; text-decoration: underline; }
.calDayOn a:hover { text-decoration: none; }
.calGrid td.calTodayOff, .calGrid td.calTodayOn { background-color: #aab424; color: white; font-weight: bold; }
.calGrid td.calTodayOn a { text-decoration: underline; color: white; font-weight: bold; }
.calBottom { text-align: left; padding-left: 20px; }
.calMonthGlance { padding: 5px 0px 3px 0px; }
.calBottom a { color: #ffffff; }


/* ---------------Shopping Module Styles--------------- */

.shoppingAlert { color: red; font-size: 8pt; }
.shoppingBody { font-size: 8pt; }
.shoppingCartEvenRow { background-color: #ffffff; color:#002d62; }
.shoppingCartOddRow { background-color: #ebebeb; color:#002d62; }
.shoppingCartTableHeader { background-color: #002d62; color: #ffffff; font-size: 8pt; font-weight: bold; }
.shoppingForm { font-size: 8pt; color:#002d62; }
.shoppingFormQuantity { background-color: #ffffff; font-size: 8pt; }
.shoppingFormRequired { font-size: 8pt; font-weight: bold; color:#002d62; }
.shoppingFormRequired input, .shoppingFormRequired select { font-weight: normal; color:#000; }
.shoppingHeading { color:#002d62; }
.shoppingInStock { }
.shoppingItemHeading { }
.shoppingOutOfStock { color: #dd0000; }
.shoppingLowStock { }
.shoppingTable { background-color: #e8e8e8; color:#002d62; }
.shoppingTableBorder { background-color: #ffffff; }


/* Send Page Styles */
.sendpage { clear:both; }
.sendpageBody div, .sendpageBody td { padding: 2px 0px; }
.sendpageBody { background:#000; font: normal 12px Georgia, serif; }
.sendpageHeader { color:#fff; font: bold 12px Georgia, serif; }
.sendpageFormTextRequired { color:#fff; font: normal 12px Georgia, serif; }
.sendpageFormText { color:#fff; font: normal 12px Georgia, serif; }
/* End Send Page Styles */


/* Pagination */
.pagination { clear: both; display: block; }
.pagination a, .pagination a:link, .pagination a:visited { text-decoration:none; }
.pagination .prevnextCurrent, .pagination .prevnextWindow, .pagination .prevnextWindowArrow { border:solid 1px #ccc; margin:0; padding:4px 6px; font-size:11px; margin-right:2px; display:inline; display:inline-block; }
.pagination a.prevnextWindow:hover, .pagination a.prevnextLink:hover, .pagination .prevnextWindowArrow:hover { border:solid 1px #000; color:#000; }
.pagination .prevnextCurrent {background:#ccc; color:#000; font-weight:bold; padding:4px 6px; }
.pagination a.prevnextLink { border:1px solid #ccc; padding:4px 6px 4px; margin-right:2px; font-size:11px; display:block; }
/* End Pagination */


/* MenuBegin:menu_main */
ul.menu_main { margin: 0; border: 0; padding: 0; list-style: none; line-height: 29px; }
ul.menu_main li { margin: 0; border: 0; padding: 0; float: left;/*Gecko*/ display: inline; list-style: none; position: relative; }
ul.menu_main ul { margin: 0; border: 0; padding: 0; list-style: none; display: none; position: absolute; top: 29px; left: 0; }
ul.menu_main ul li { position: relative; display: block !important; display: inline;/*For IE*/ float: left;/*IE 7*/ position: relative; }

/* 1st Level */
ul.menu_main a { color: #fff; background: transparent url(graphics/design/menu_sep.jpg) no-repeat right 8px; text-decoration: none; text-align: left; padding: 0px 7px; text-transform:uppercase; font: normal 17px/29px Georgia, serif; float: none !important; /*For Opera*/ float: left; /*For IE*/ display: block; height: auto !important; height: 1%; /*For IE*/ }
ul.menu_main a:hover,
ul.menu_main li:hover a,
ul.menu_main a:hover,
ul.menu_main li.over a { color: #fff; background: #033047; text-decoration: none; }
ul.menu_main a.last { background-image:none; }

/* 2nd Level */
ul.menu_main li:hover li a,
ul.menu_main li.over li a { line-height:13px; padding:4px 2px; padding:4px 2px; width: 150px; color: #fff; background: #035783; border-left: 1px solid #aaa; border-right: 1px solid #aaa; border-top: 1px solid #aaa; border-bottom:0; float: none; }
ul.menu_main li:hover li a:hover,
ul.menu_main li:hover li:hover a,
ul.menu_main li.over li a:hover,
ul.menu_main li.over li.over a { color: #fff; background: #033047; text-decoration: none; color: #fff; background: #033047; }
ul.menu_main li:hover ul,
ul.menu_main li.over ul { width: 150px; }
ul.menu_main li:hover li a.first,ul.menu_main li.over li a.first { border-top: 1px solid #aaa; }
ul.menu_main li:hover li a.last,ul.menu_main li.over li a.last { border-bottom: 1px solid #aaa; }

/* 3rd Level */
ul.menu_main li:hover li:hover li a,
ul.menu_main li.over li.over li a { padding:4px 2px; width: 150px; color: #fff; background: #035783; border-left: 1px solid #aaa; border-right: 1px solid #aaa; border-top: 1px solid #aaa; border-bottom:0; }
ul.menu_main li:hover li:hover li a:hover,
ul.menu_main li:hover li:hover li:hover a,
ul.menu_main li.over li.over li a:hover,
ul.menu_main li.over li.over li.over a { color: #fff; background: #033047; text-decoration: none; color: #fff; background: #033047; }
ul.menu_main li:hover li:hover li a.first,ul.menu_main li.over li.over li a.first { border-top: 1px solid #aaa; }
ul.menu_main li:hover li:hover li a.last,ul.menu_main li.over li.over li a.last { border-bottom: 1px solid #aaa; }

/* 4th Level */
ul.menu_main li:hover li:hover li:hover li a,
ul.menu_main li.over li.over li.over li a { padding:4px 2px; width: 150px; color: #fff; background: #035783; border-left: 1px solid #aaa; border-right: 1px solid #aaa; border-top: 1px solid #aaa; border-bottom:0; }
ul.menu_main li:hover li:hover li:hover li a:hover,
ul.menu_main li.over li.over li.over li a:hover { color: #fff; background: #033047; text-decoration: none; color: #fff; background: #033047; }
ul.menu_main li:hover li:hover li:hover li a.first,ul.menu_main li.over li.over li.over li a.first { border-top: 1px solid #aaa; }
ul.menu_main li:hover li:hover li:hover li a.last,ul.menu_main li.over li.over li.over li a.last { border-bottom: 1px solid #aaa; }

ul.menu_main ul ul,
ul.menu_main ul ul ul { display: none; position: absolute; top: 0; left: 155px; }

/* Do Not Move - Must Come Before display:block for Gecko */
ul.menu_main li:hover ul ul,ul.menu_main li:hover ul ul ul,ul.menu_main li.over ul ul,ul.menu_main li.over ul ul ul { display: none; }
ul.menu_main li:hover ul,ul.menu_main ul li:hover ul,ul.menu_main ul ul li:hover ul,ul.menu_main li.over ul,ul.menu_main ul li.over ul,ul.menu_main ul ul li.over ul { display: block; }
ul.menu_main .nav ul :after /*IE 7*/ { clear: both; display: block; font: 1px/0px serif; content: ; height: 0; visibility: hidden; }
/* MenuEnd:menu_main */

/* MenuBegin:menu_main_int */
ul.menu_main_int { margin: 0; border: 0; padding: 0; list-style: none; line-height: 25px; }
ul.menu_main_int li { margin: 0; border: 0; padding: 0; float: left;/*Gecko*/ display: inline; list-style: none; position: relative; }
ul.menu_main_int ul { margin: 0; border: 0; padding: 0; list-style: none; display: none; position: absolute; top: 25px; left: 0; }
ul.menu_main_int ul li { position: relative; display: block !important; display: inline;/*For IE*/ float: left;/*IE 7*/ position: relative; }

/* 1st Level */
ul.menu_main_int a { color: #fff; background: transparent url(graphics/design/menu_sep.jpg) no-repeat right 6px; text-decoration: none; text-align: left; padding: 0px 7px; text-transform:uppercase; font: normal 17px/25px Georgia, serif; float: none !important; /*For Opera*/ float: left; /*For IE*/ display: block; height: auto !important; height: 1%; /*For IE*/ }
ul.menu_main_int a:hover,
ul.menu_main_int li:hover a,
ul.menu_main_int a:hover,
ul.menu_main_int li.over a { color: #fff; background: #033047; text-decoration: none; }
ul.menu_main_int a.last { background-image:none; }

/* 2nd Level */
ul.menu_main_int li:hover li a,
ul.menu_main_int li.over li a { line-height:13px; padding:4px 2px; padding:4px 2px; width: 150px; color: #fff; background: #035783; border-left: 1px solid #aaa; border-right: 1px solid #aaa; border-top: 1px solid #aaa; border-bottom:0; float: none; }
ul.menu_main_int li:hover li a:hover,
ul.menu_main_int li:hover li:hover a,
ul.menu_main_int li.over li a:hover,
ul.menu_main_int li.over li.over a { color: #fff; background: #033047; text-decoration: none; color: #fff; background: #033047; }
ul.menu_main_int li:hover ul,
ul.menu_main_int li.over ul { width: 150px; }
ul.menu_main_int li:hover li a.first,ul.menu_main_int li.over li a.first { border-top: 1px solid #aaa; }
ul.menu_main_int li:hover li a.last,ul.menu_main_int li.over li a.last { border-bottom: 1px solid #aaa; }

/* 3rd Level */
ul.menu_main_int li:hover li:hover li a,
ul.menu_main_int li.over li.over li a { padding:4px 2px; width: 150px; color: #fff; background: #035783; border-left: 1px solid #aaa; border-right: 1px solid #aaa; border-top: 1px solid #aaa; border-bottom:0; }
ul.menu_main_int li:hover li:hover li a:hover,
ul.menu_main_int li:hover li:hover li:hover a,
ul.menu_main_int li.over li.over li a:hover,
ul.menu_main_int li.over li.over li.over a { color: #fff; background: #033047; text-decoration: none; color: #fff; background: #033047; }
ul.menu_main_int li:hover li:hover li a.first,ul.menu_main_int li.over li.over li a.first { border-top: 1px solid #aaa; }
ul.menu_main_int li:hover li:hover li a.last,ul.menu_main_int li.over li.over li a.last { border-bottom: 1px solid #aaa; }

/* 4th Level */
ul.menu_main_int li:hover li:hover li:hover li a,
ul.menu_main_int li.over li.over li.over li a { padding:4px 2px; width: 150px; color: #fff; background: #035783; border-left: 1px solid #aaa; border-right: 1px solid #aaa; border-top: 1px solid #aaa; border-bottom:0; }
ul.menu_main_int li:hover li:hover li:hover li a:hover,
ul.menu_main_int li.over li.over li.over li a:hover { color: #fff; background: #033047; text-decoration: none; color: #fff; background: #033047; }
ul.menu_main_int li:hover li:hover li:hover li a.first,ul.menu_main_int li.over li.over li.over li a.first { border-top: 1px solid #aaa; }
ul.menu_main_int li:hover li:hover li:hover li a.last,ul.menu_main_int li.over li.over li.over li a.last { border-bottom: 1px solid #aaa; }

ul.menu_main_int ul ul,
ul.menu_main_int ul ul ul { display: none; position: absolute; top: 0; left: 155px; }

/* Do Not Move - Must Come Before display:block for Gecko */
ul.menu_main_int li:hover ul ul,ul.menu_main_int li:hover ul ul ul,ul.menu_main_int li.over ul ul,ul.menu_main_int li.over ul ul ul { display: none; }
ul.menu_main_int li:hover ul,ul.menu_main_int ul li:hover ul,ul.menu_main_int ul ul li:hover ul,ul.menu_main_int li.over ul,ul.menu_main_int ul li.over ul,ul.menu_main_int ul ul li.over ul { display: block; }
ul.menu_main_int .nav ul :after /*IE 7*/ { clear: both; display: block; font: 1px/0px serif; content: ; height: 0; visibility: hidden; }
/* MenuEnd:menu_main_int */
#freedom_calendar { position: absolute; left: 100px; top: 100px; width: 175px; z-index: 100; visibility: hidden; clip:rect(0px 175px 145px 0px); height:145px; }