/*
----------------------------------------
file: main.css
app: officiants.tv
date: june 2008
desc: main style document
----------------------------------------
*/


/* elements
................................................................................ */
body {
   margin: 0;
   padding: 0 0 20px;
   font: 1em arial, helvetica, sans-serif;
   line-height: 1em;
   color: #666;
   background: #d9d3b0 url(../img/body_back.jpg) repeat-x 0 0;
   }

div, span, h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, p, form, img, blockquote, tr, td {
   margin: 0;
   padding: 0;
   border: 0;
   }

table {
   border-collapse: collapse;
   }

ul, ol, li {
   list-style: none;
   }

img {
   display: block; /* remove inline whitespace (strict doctype) */
   }

body a {
   border-bottom: 1px solid #fff;
   text-decoration: none;
   }

#col-left-520 a:hover, #col-left-280 a:hover, #col-right-560 a:hover, #col-right-320 a:hover, #ad-strip a:hover, #foot a:hover {
   border: 0 !important;
   }


/* layout
................................................................................ */
#main-cont {
   position: relative;
   width: 860px;
   margin: 42px auto 0;
   padding: 0 20px;
   background-color: #fcfcfc;
   }

#main-top-cor {
   position: absolute;
   top: -12px;
   left: 0;
   width: 900px;
   height: 12px;
   background: url(../img/maincon_corners_top.gif) no-repeat 0 0;
   }

#main-bot-cor {
   position: absolute;
   bottom: -12px; /* refer to ie6 style sheet for alternate value */
   left: 0;
   width: 900px;
   height: 12px;
   background: url(../img/maincon_corners_bot.gif) no-repeat 0 0;
   }

#head-cont {
   position: relative;
   margin: 0 0 20px;
   }

#nav-cont {
   margin: 0 0 20px;
   }

#col-left-520 {
   float: left;
   width: 520px;
   }

#col-left-280 {
   float: left;
   width: 280px;
   }

#col-right-320 {
   float: right;
   width: 320px;
   }

#col-right-560 {
   float: right;
   width: 560px;
   }

#foot {
   clear: both;
   background-color: #766b41;
   }


/* head
................................................................................ */
h1 {
   position: absolute;
   left: -999em;
   }

#head-logo {
   padding: 20px 0 0;
   }

#head-banner {
   position: absolute;
   top: 10px;
   right: 0;
   width: 600px;
   height: 90px;
   }


/* nav
................................................................................ */
/* all nav item widths - including margins / padding / borders - must add up to 860 pixels or less */

#nav-cont li {
   float: left;
   margin-right: 1px;
   font-size: 80%;
   }

#nav-cont a {
   display: block;
   width: 151px;
   padding: 6px 10px 5px;
   border-bottom: 5px solid #333;
   text-align: center;
   color: #fff;
   background-color: #766b41;
   }

#nav-cont a:hover {
   border-color: #666;
   color: #000;
   background-color: #d9d3b0;
   }


/* common content elements
................................................................................ */
h2 {
   margin: 0 0 10px;
   font-size: 95%;
   font-weight: bold;
   color: #333;
   }

h2 span {
   margin-right: 10px;
   }

h2 a {
   border-color: #666;
   font-size: 75%;
   font-weight: normal;
   color: #753131;
   }

.panel1 {
   margin: 0 0 20px;
   border-bottom: 10px solid #d9d9e6;
   }

.panel1 h2 {
   margin: 0;
   padding: 8px 10px;
   background-color: #d9d9e6;
   }

.panel1 .content {
   padding: 10px 10px 5px;
   background-color: #eee;
   }


/* specific content components
................................................................................ */
#search {
   margin: 0 0 20px;
   padding: 10px;
   background-color: #e7e2cb;
   }

#search h2 {
   text-align: center;
   }

#searchbox {
   width: 206px;
   font-size: 100%;
   color: #666;
   vertical-align: middle;
   }

#searchsubmit {
   width: 82px;
   padding: 4px 0;
   border: 0;
   font-size: 85%;
   color: #fff;
   background-color: #444;
   vertical-align: middle;
   }

.feat-vid {
   margin: 0 0 20px;
   }

.feat-vid .vid {
   margin: 0 0 2px;
   padding: 10px;
   background-color: #d9d9e6;
   }

.feat-vid .desc {
   margin: 0 20px;
   padding: 5px 10px;
   font-size: 75%;
   line-height: 1.5;
   text-align: center;
   color: #fff;
   background-color: #996;
   }

.feat-vid .desc a.name {
   margin: 0 5px 0 0;
   border-color: #666;
   font-weight: bold;
   color: #333;
   }

#ad-strip {
   clear: both;
   margin: 0 0 20px;
   padding: 10px 0 0 10px;
   background: url(../img/fade1.jpg) repeat-x 0 0;
   }

#ad-strip h2 {
   margin-left: 8px;
   }

#ad-strip .ad-tile {
   float: left;
   display: inline;
   width: 152px;
   margin: 0 8px;
   }

#ad-strip .ad-tile img {
   margin: 0 0 3px;
   border: 1px solid #666;
   }

#ad-strip h6 {
   margin: 0 0 3px;
   font-size: 75%;
   text-align: center;
   }

#ad-strip h6 a {
   border-color: #666;
   color: #625e35;
   }

#ad-strip p {
   font-size: 70%;
   text-align: center;
   }

.vid-thumb {
   padding: 0 0 10px;
   }

.vid-thumb img {
   float: left;
   }

.vid-thumb h5 {
   margin: 0 0 4px 135px;
   font-size: 75%;
   }

.vid-thumb h5 a {
   border-color: #666;
   color: #625e35;
   }

.vid-thumb p {
   margin: 0 0 1px 135px;
   font-size: 70%;
   }

.vid-thumb .city {
   color: #000;
   }

.dir1, .dir2, .dir3 {
   margin: 0 0 20px;
   }

.dir1 .listing, .dir2 .listing {
   margin: 0 0 3px;
   padding: 10px 10px 15px;
   background-color: #e7e2cb;
   }

.dir2 .listing {
   background-color: #d9d9e6;
   }

.dir3 .listing {
   margin: 0 0 2px;
   padding: 10px;
   background-color: #eee;
   }

.dir1 .left, .dir2 .left {
   float: left;
   margin-bottom: 3px;
   width: 171px;
   }

.dir1 .left img, .dir2 .left img {
   margin: 0 0 4px;
   padding: 1px;
   border: 1px solid #666;
   background-color: #fff;
   }

.dir1 .left span, .dir2 .left span {
   display: block;
   text-align: center;
   font-size: 85%;
   font-weight: bold;
   color: #333;
   }

.dir1 .listing p, .dir2 .listing p {
   margin: 0 0 3px 180px;
   font-size: 75%;
   }

.dir1 .listing p.name a, .dir2 .listing p.name a, .dir3 .listing p.name a {
   border-color: #666;
   font-size: 115%;
   font-weight: bold;
   color: #625e35;
   }

.dir1 .listing p.rating, .dir2 .listing p.rating {
   padding-top: 3px;
   }

.dir1 .listing p.address, .dir2 .listing p.address {
   color: #333;
   }

.dir1 .listing p.desc, .dir2 .listing p.desc {
   color: #666;
   }

.dir1 .listing p.links, .dir2 .listing p.links {
   clear: left;
   margin: 0;
   text-align: center;
   color: #999;
   }

.dir1 .listing p.links a, .dir2 .listing p.links a, .dir3 .listing p.links a {
   margin: 0 2px;
   border-color: #666;
   color: #753131;
   }

.dir3 .listing p.links {
   float: right;
   margin: 0;
   padding: 0 0 1px;
   font-size: 75%;
   }

.dir3 .listing p.name {
   margin: 0 0 4px;
   font-size: 75%;
   }

.dir3 .listing p.name span {
   margin: 0 0 0 5px;
   color: #000;
   }

.dir3 .listing p.desc {
   font-size: 75%;
   }


/* panel rounded corners
................................................................................ */
.cor {
   position: relative;
   }

.tl, .tr, .br, .bl {
   position: absolute;
   width: 10px;
   height: 10px;
   }

.cor .tl {
   top: 0px;
   left: 0px;
   background: url(../img/panel_corner_tl.gif) no-repeat 0 0;
   }

.cor .tr {
   top: 0px;
   right: 0px;
   background: url(../img/panel_corner_tr.gif) no-repeat 0 0;
   }

.cor .br {
   bottom: 0px;
   right: 0px;
   background: url(../img/panel_corner_br.gif) no-repeat 0 0;
   }

.cor .bl {
   bottom: 0px;
   left: 0px;
   background: url(../img/panel_corner_bl.gif) no-repeat 0 0;
   }


/* brochure
................................................................................ */
#brochure-cont {
   margin: 0 0 20px;
   padding: 10px;
   background-color: #d9d9e6;
   }

.bro-head {
   width: 100%; /* float clearing / containing */
   overflow: hidden; /* float clearing / containing */
   margin: 0 0 20px;
   }

.bro-head h2 {
   margin: 0 0 7px;
   font-size: 115%;
   color: #333;
   }

.bro-head .logo {
   float: right;
   width: 171px;
   }

.bro-head .logo img {
   padding: 2px;
   border: 1px solid #666;
   }

.bro-head .logo span {
   display: block;
   margin: -1px 0 0;
   padding: 3px 10px;
   border: 1px solid #666;
   font-weight: bold;
   text-align: center;
   color: #333;
   background-color: #fff;
   }

.bro-head p.rating, .bro-head p.address {
   margin-bottom: 5px;
   font-size: 85%;
   }

.bro-head p.rating img {
   display: inline;
   margin: 0 10px 0 0;
   }

.bro-head p.rating a {
   border-bottom: 1px solid #666;
   color: #753131;
   }

.bro-head p.address {
   margin-bottom: 10px;
   color: #333;
   }

.bro-section {
   padding: 0 0 20px;
   }

.bro-section h3 {
   padding: 10px 20px 15px;
   font-size: 95%;
   color: #333;
   background: url(../img/brochure_section_title_back.gif) no-repeat 0 0;
   }

.bro-section .content {
   padding: 15px 30px 5px;
   }

.bro-summary p {
   font-size: 75%;
   line-height: 1.45;
   }

.bro-reviews p {
   font-size: 75%;
   }

.bro-section .content p {
   color: #333;
   }

.review {
   margin: 0 0 10px;
   padding: 10px 0 5px;
   border-top: 1px solid #aaa;
   }

.review img.avatar {
   float: left;
   padding: 1px;
   border: 1px solid #666;
   background-color: #fff;
   }

.review p {
   margin: 0 0 4px 75px;
   line-height: 1.2;
   }

.review .by {
   color: #666;
   }

.review .txt a, .review .by a {
   border-bottom: 1px solid #666;
   color: #753131;
   }

.review p.refer {
   color: #222;
   }

.review .yes {
   margin-left: 3px;
   font-weight: bold;
   color: #179329;
   }

.review .no {
   margin-left: 3px;
   font-weight: bold;
   color: #9c0000;
   }

.review .by span {
   margin: 0 1px;
   color: #666;
   }

.bro-detail table {
   width: 100%;
   margin: 0 auto 15px;
   font-size: 75%;
   }

.bro-detail table td {
   padding: 5px 10px;
   color: #444;
   vertical-align: top;
   }

.bro-detail table td.att {
   padding-right: 5px;
   text-align: right;
   color: #625e35;
   }

.bro-section p.moretop {
   margin-bottom: 7px;
   text-align: right;
   }

.bro-section p.moretop a {
   margin: 0 2px;
   border-bottom: 1px solid #666;
   color: #753131;
   }

.bro-recom table {
   width: 400px;
   margin: 0 auto;
   }

.bro-recom table td {
   padding: 0 5px 10px;
   font-size: 95%;
   text-align: center;
   vertical-align: top;
   }

.bro-recom table img {
   margin: 0 auto 2px;
   padding: 2px;
   border: 1px solid #666;
   background-color: #fff;
   }

.bro-recom table h5 a {
   border-bottom: 1px solid #666;
   line-height: 1.5;
   color: #625e35;
   }

.bro-recom table p {
   margin: 0;
   padding: 3px 0 0;
   font-size: 80%;
   }


/* request form
................................................................................ */
.requestform {
   padding: 0 0 10px;
   font-size: 75%;
   }

.requestform p {
   margin: 0 0 10px 0;
   font-size: 100%;
   text-align: left;
   }

.requestform fieldset { /* refer to ie6-only AND ie7-only style sheets for alternate values */
   position: relative;
   margin: 10px 0 15px;
   padding: 5px 15px 15px;
   border: 1px solid #333;
   background-color: #e9e9f3;
   }

.requestform legend {
   position: absolute;
   top: -.5em;
   left: 15px;
   margin: -3px;
   padding: 3px 10px;
   border: 1px solid #333;
   font-weight: bold;
   color: #436281;
   background-color: #fff;
   }

.requestform label {
   display: block;
   margin: 5px 0 3px;
   padding: 4px 0 0;
   border-top: 1px dashed #ccc;
   font: bold 85% verdana, arial, helvetica, sans-serif;
   color: #444;
   }

.requestform label span {
   margin-left: 5px;
   font-weight: normal;
   }

.requestform label span.error {
   color: #900;
   }

.requestform table table label { /* ASP code-dependent rule */
   display: inline;
   font-weight: normal;
   border: 0;
   }

.requestform table table td { /* ASP code-dependent rule */
   padding: 2px 10px 2px 0;
   }

.requestform table table input {
   vertical-align: middle;
   }

.requestform input, .requestform select, .requestform textarea {
   font: 95% verdana, arial, helvetica, sans-serif;
   }

.requestform h6 {
   margin: 0 0 10px;
   font-size: 100%;
   color: #436281;
   }

.requestform p {
   margin: 0 0 10px;
   }

.requestform .errors {
   margin: 0 0 15px;
   padding: 10px;
   border: 1px solid #900;
   color: #000;
   background-color: #f4e8e8;
   }

.requestform .errors p {
   font-size: 115%;
   color: #600;
   }

.requestform .errors li {
   margin: 0 0 0 25px;
   list-style-type: disc;
   }


/* foot
................................................................................ */
#foot p {
   padding: 8px 15px 10px;
   font-size: 75%;
   text-align: center;
   color: #fff;
   }

.footlinks {
   padding: 0 0 0 15px;
   }

.footlinks a {
   margin: 0 5px;
   border-bottom: 1px solid #ccc;
   text-decoration: none;
   color: #fff;
   }

.footlinks a:hover {
   border: 0;
   }


/* misc
................................................................................ */
.clear {
   clear: both;
   }

.clearleft {
   clear: left;
   }