/* Reset margin & padding on common elements */
html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, li, p, pre, form, fieldset, table, th, td { margin: 0px; padding: 0px; }

/* Sticky footer */
html, body { height: 100%; }
.wrapper { min-height: 100%; height: auto !important; height: 100%; margin: 0px auto -188px; }
#footer, .push { height: 188px; }

/* General styles */
body { background: url('../img/body-background.jpg') center 142px repeat-x #003d6b; text-align: center; font: 12px/16px Helvetica, Arial, sans-serif; }
a:hover { text-decoration: none; }
.container { margin: 0px auto; width: 814px; text-align: left; }
a img { border: 0px; }

/* Header */
#header { background: url('../img/header-background.png') 0px 0px repeat-x; height: 106px; }
#header img { margin-top: 17px; }

/* Utility navigation */
#header #utility-nav { float: right; padding: 15px 0px; }
#header #utility-nav ul { list-style-type: none; }
#header #utility-nav ul li { display: inline; border-left: 1px solid #c46f0b; padding: 0px 5px 0px 5px; }
#header #utility-nav ul li.first-child { border: 0px; }
#header #utility-nav ul li a { color: #003d6b; text-decoration: none; text-transform: uppercase; font-weight: bold; }

/* Search form */
#header form { float: right; clear: right; background: url('../img/search-form-background.png') 0px 0px no-repeat; width: 255px; height: 26px; padding: 6px; }
#header form label { position: absolute; left: -9999px; }
#header form input { width: 185px; height: 21px; padding: 5px 0px 0px 5px; border: 0px; font-weight: bold; color: #666; font-size: 12px; vertical-align: top; }
#header form button { color: #c46f0b; background: url('../img/button-background.png') 0px 0px repeat-x; height: 26px; width: 59px; border: 0px; font-weight: bold; cursor: pointer; vertical-align: middle; }

/* Primary navigation */
#nav { background: url('../img/nav-background.png') 0px 0px repeat-x; height: 36px; }
#nav ul { list-style-type: none; }
#nav ul li { float: left; border-left: 1px solid #c4b68c; }
#nav ul li:first-child { border-left: 0px; }
#nav ul li a { float: left; padding: 11px 18px 0px 18px; height: 25px; font-size: 14px; color: #003d6b; font-weight: bold; text-transform: uppercase; text-decoration: none; }
#nav ul li a:hover,
#nav ul li a.current,
#nav ul li.sfHover a { background: url('../img/nav-hover-background-2.png') top center; color: #fff; }

/* Drop down navigation */
#nav ul li ul { background: #e1d8bd; border: 1px solid #d9cfaf; margin-top: 20px; width: 240px; padding: 5px; -moz-box-shadow: 5px 5px 5px #000; -webkit-box-shadow: 1px 1px 5px #000; }
#nav ul li ul li.first-child,
#nav ul li ul li { float: none; border-bottom: 1px solid #a4aba1; border-left: 0px; padding: 3px 0px 4px 0px; }
#nav ul li ul li.last-child { background: none; padding-bottom: 0px; border-bottom: 0px; }
#nav ul li ul li.first-child { padding-top: 0px; }
#nav ul li.sfHover ul li a { background: none; float: none; padding: 3px; color: #003d6b; height: auto; text-transform: none; }
#nav ul li.sfHover ul li a:hover { background: #d48529; color: #fff; }
#nav ul li.last-child ul li a,
#nav ul li.first-child ul li a { padding: 3px; }

/* Slideshow */
#slideshow .container { background: url('../img/slideshow-background.png'); height: 326px; color: #ada27c; }
#slideshow .container #prev { float: left; margin-top: 140px; margin-left: 10px; }
#slideshow .container #next { float: right; margin-top: 140px; margin-right: 10px; }
#slideshow .container #slides { text-align: center; height: 326px; width: 491px; margin: 0px auto; }
#slideshow .container #slides div { padding-top: 27px; width: 491px; height: 243px; }
#slideshow .container #slides p { margin-top: 20px; font-size: 14px; }
#slideshow .container #slides p a { color: #d9d1b6 }

/* "Headline" area - not exactly part of main content <div> */
#headline h1 { margin-bottom: 10px; margin-left: 16px; font-size: 28px; line-height: 120%; color: #d9d1b6; font-weight: normal; }
body.homepage #headline h1 { margin-left: 0px; }	/* To fix H1 alignment on homepage - Bryan wanted a left margin on secondary pages */
#headline h2 { margin: 10px 0px; font-size: 18px; line-height: 130%; color: #fff; font-weight: normal; }
#headline hr { border: 0px; border-top: 1px solid #c06f0f; height: 0px; }
#headline a { color: #fff; }
#headline a:visited { color: #ddd; }

/* Callouts on homepage */
#callouts { background: url('../img/callouts-background.png') center 0px repeat-y; overflow: auto; }
#callouts-top { background: url('../img/callouts-top-background.png') center 0px no-repeat; height: 10px; margin-top: 25px; }
#callouts-bottom { background: url('../img/callouts-bottom-background.png') center 0px no-repeat; height: 10px; margin-bottom: 33px; }
#callouts .callout { float: left; width: 260px; margin-left: 5px; }
#callouts .callout:first-child,
#callouts .callout.first-child { margin-left: 15px; }
#callouts .callout h3 { background: url('../img/callout-h3-background.png') 0px 0px no-repeat; margin-bottom: 5px; width: 235px; height: 25px; padding: 12px 0px 0px 10px; font-weight: normal; color: #fff; text-transform: uppercase; }
#callouts .callout p { font-size: 11px; color: #fff; padding: 0px 4px; margin: 0px 0px 10px 0px; }
#callouts .callout a { color: #fff; }

#breadcrumb p { font-size: 11px; text-align: right; color: #d9d1b6; margin: 10px 0px; }
#breadcrumb a { color: #d9d1b6; }

/* Main content area */
#content { background: url('../img/content-background.png') center 0px repeat-y; overflow: auto; padding: 5px 0px; }
#content-top { background: url('../img/content-top-background.png') center 0px no-repeat; height: 10px; }
#content-bottom { background: url('../img/content-bottom-background.png') center 0px no-repeat; height: 10px; margin-bottom: 33px; }
#content .container { padding: 7px 17px; width: 780px; }
#content strong { color: #114b78; }
#content p { margin: 10px 0px; }
#content a { color: #003d6b; }
#content h2 { margin: 0px 0px 10px 0px; font: 20px/26px Helvetica, Arial, sans-serif; color: #003d6b; }
#content h3 { margin: 0px 0px 10px 0px; font: 16px/20px Helvetica, Arial, sans-serif; }
#content hr { border: 0px; height: 0px; border-top: 1px solid #003d6b; margin: 10px 0px; }
#content ul, 
#content ol { margin: 10px 0px 10px 35px; }
#content ul { list-style-type: circle; }
#content ul.news { margin-left: 15px; }
#content .column { float: right; width: 263px; }
#content .column.one { width: 485px; float: left; }
#content .column.one p:first-child { margin-top: 0px; }

body.hotel-services #content img { float: left; margin: 0px 10px 10px 0px; }
body.portfolio #content img { float: left; margin: 0px 10px 10px 0px; }

body.hotel-services #content hr,
body.executive-profile #content hr,
body.hotels #content hr,
body.restaurants #content hr,
body.outside-catering #content hr,
body.social-and-athletic-clubs #content hr,
body.entertainment #content hr,
body.conference-centers #content hr,
body.large-events-and-sporting #content hr,
body.current-projects #content hr,
body.portfolio #content hr { clear: left; }

body.hotels #content img, 
body.executive-profile #content img,
body.corporate-housing #content img,
body.restaurants #content img,
body.outside-catering #content img,
body.social-and-athletic-clubs #content img,
body.entertainment #content img,
body.conference-centers #content img,
body.large-events-and-sporting #content img,
body.current-projects #content img { float: left; margin: 5px 30px 15px 0px; }
body.corporate-housing #content img { margin: 5px 30px 25px 0px; }

/* Callouts on secondary pages */
#content .callout { background: url('../img/secondary-callout-background.png') no-repeat; width: 243px; padding: 10px 10px 1px 10px; }
#content .callout-bottom { background: url('../img/secondary-callout-bottom-background.png') no-repeat; width: 263px; height: 10px; margin-bottom: 17px; }
#content .callout h3 { background: url('../img/callout-h3-background.png') 0px 0px no-repeat; margin: 0px 0px 5px 0px; width: 235px; height: 27px; padding: 10px 0px 0px 10px; font-weight: normal; color: #fff; text-transform: uppercase; }
#content .callout p { font-size: 11px; color: #fff; padding: 0px 4px; margin-bottom: 0px; }
#content .callout a { color: #d5cdae; }
#content .callout strong { color: #fff; }
#content .callout ul { list-style-type: none; margin: 0px 0px 0px 10px; }
#content .callout ul li { padding: 3px 0px 3px 13px; background: url('../img/bullet.png') 0px 7px no-repeat; }

/* Footer */
#footer { background: url('../img/footer-background.png') center 0px no-repeat; color: #d5cdae; font-size: 10px; line-height: 14px; }
#footer .container { padding: 5px 20px 10px 20px; width: 774px; overflow: auto; }
#footer a { color: #d5cdae; }
#footer p { margin: 10px 0px; }
#footer h5 { color: #d5862a; font-size: 11px; text-transform: uppercase; margin: 10px 0px; }
#footer .column { width: 175px; padding-right: 10px; float: left; margin-left: 10px; }
#footer .column.close { width: 110px; }
#footer .column:first-child { margin-left: 0px; }
#footer ul { list-style-type: none; }
#footer ul li { margin: 4px 0px; }