/* GLOBAL STYLES
----------------------------------------------------------*/
body
{
    margin:0;
    font-family:Arial;
    font-size:14px;
    color:#5D636C;
}
p
{
    font-family:Arial;
    line-height:1.3;
    margin-top:0;
}
ul
{
}
img
{
    border:0;
}
h1, h2, h3, h4, h5, h6
{
    color:#000;
    margin-top:0;
}
h1
{
    font-size:18px;
}
h2
{
    font-size:16px;
}
h3
{
    font-size:14px;
}
a
{
    color:#188EC1;
    text-decoration:none;
}
a:hover
{
}
table
{
    border-collapse:collapse;
}
input, select, textarea
{
    font-family:Arial;
    font-size:14px;
    color:#5D636C;
}

/* validation summary */
.validation-summary-errors
{
    background:#FFE3E3;
    border:2px solid #DD0000;
    margin:10px 0;
    font-size:14px;
}
.validation-summary-errors ul
{
}
.validation-summary-errors li
{
    color:#880000;
}

/* MAIN LAYOUT ELEMENTS
----------------------------------------------------------*/
#page_container 
{
    background:url(images/css/footer_bg.png) repeat-x bottom;
}
#page
{
    width:970px;
    margin:auto;
}
#header
{
    height:166px;
    position:relative;
    background:url(images/css/header-v1.jpg) no-repeat 0 50px;
}
#main_menu
{
    height:39px;
    background:url(images/css/main_menu_bg.png) no-repeat 0 0;
    margin-bottom:16px;
}
#footer
{
    margin-top:40px;
    padding-top:20px;
    height:290px;
    overflow:hidden;
    position:relative;
    color:#212D3F;
}

/* HEADER ELEMENTS
----------------------------------------------------------*/
/* logo */
#header .logo a
{
    position:absolute;
    width:266px;
    height:80px;
    left:0;
    top:55px;
    text-indent:-2000px;
    overflow:hidden;
}

/* top menu */
#header .top_menu
{
    position:absolute;
    right:0;
    top:0;
    border-bottom:1px dotted #CCC;
    padding-left:50px;
    color:#000;
    font-size:11px;
}
#header .top_menu h2
{
    float:left;
    margin:0;
    margin-right:10px;
    color:#0175A5;
    line-height:43px;
    font-size:11px;
    font-weight:normal;
    text-transform:uppercase;
}
#header .top_menu .pointer
{
    float:left;
}
#header .top_menu .pointer p
{
    line-height:43px;
}

/* text */
#header .text
{
    display:none;
    
    position:absolute;
    left:575px;
    top:85px;
    color:#0175A5;
    text-transform:uppercase;
    font-size:18px;
}

/* phone number */
#header .phone
{
    display:none;
    
    position:absolute;
    right:0;
    top:84px;
    font-size:26px;
    line-height:1;
    font-weight:bold;
    color:#000;
    padding-left:36px;
    border-left:1px solid #B9B9B9;
    background:url(images/css/icon_phone.png) no-repeat 11px 0;
}

/* MAIN MENU
----------------------------------------------------------*/
#main_menu ul
{
    margin:0;
    padding:0;
    margin-right:-10px;
}
#main_menu li
{
    list-style:none;
    float:left;
    background:url(images/css/main_menu_separator.png) no-repeat 0 0;
    padding-left:2px;
    position:relative;
    z-index:100;
}
#main_menu li.first
{
    background:none;
}
#main_menu li.first a
{
    background:none;
}
#main_menu li a
{
    display:block;
    font-size:16px;
    font-weight:bold;
    line-height:17px;
    color:#FFF;
    padding:11px 43px;
    text-decoration:none;
}
#main_menu li.first a
{
    padding-left:45px;
    padding-right:45px;
}
#main_menu li a:hover,
#home_page #main_menu li.home a,
#about_us_page #main_menu li.about_us a,
#buying_page #main_menu li.buying a,
#get_a_quote_now_page #main_menu li.get_a_quote_now a,
#selling_page #main_menu li.selling a,
#contact_us_page #main_menu li.contact_us a
{
    background:url(images/css/main_menu_hover_bg.png) repeat-x 0 0;
}
#main_menu ul li:hover ul
{
    display:block;
}
#main_menu ul ul
{
    display:none;
    position:absolute;
    z-index:100;
    background:url(images/css/sub_menu_bg.png) no-repeat right bottom;
    padding:0 6px 7px 0;
}
#main_menu ul ul li
{
    background:none;
    float:none;
}
#main_menu ul ul li a
{
    background:none !IMPORTANT;
    background:#E3E3E3;
    color:#000;
    font-size:11px;
    padding:10px 29px 6px 29px;
    font-weight:normal;
    white-space:nowrap;
}
#main_menu ul ul li a:hover
{
    background:#F1F1F1 !IMPORTANT;
}

/* BODY ELEMENTS
----------------------------------------------------------*/
/* default banner */
#main .default_banner
{
    height:103px;
    background:url(images/css/default_banner.png) no-repeat 0 0;
    overflow:hidden;
}
#main .default_banner h1
{
    margin:33px 0 0 45px;
    font-weight:normal;
    font-size:32px;
    color:#FFF;
    float:left;
    background:url(images/css/default_banner_arrow.png) no-repeat right;
    padding-right:40px;
}

/* default content borders */
#main .default_content_border_bottom
{
    padding-bottom:6px;
    background:url(images/css/default_content_border_bottom.png) no-repeat bottom;
}
#main .default_content_border_sides
{
    border-left:1px solid #D5D3D3;
    border-right:1px solid #D5D3D3;
    overflow:hidden;
    padding:30px 30px 24px 30px;
}

/* tabs */
.tabs
{
    margin-bottom:15px;
    font-size:13px;
}
.tabs ul
{
    margin:0;
    padding:0;
    overflow:hidden;
    background:url(images/css/tab-bottom.png) repeat-x bottom;
    padding-bottom:8px;
    white-space:nowrap;
}
* html .tabs ul /* ie6 hack */
{
    width:100%;
}
.tabs li
{
    list-style:none;
    float:left;
    padding-right:3px;
    background:url(images/css/tab-off-right.png) no-repeat top right;
    margin-right:1px;
}
.tabs li a
{
    display:block;
    height:29px;
    background:url(images/css/tab-off-left.png) no-repeat top left;
    text-decoration:none;
    color:#FFF;
    line-height:25px;
    padding-left:3px;
}
* html .tabs li a /* ie6 hack */
{
    width:1px;
}
.tabs li.selected
{
    background:url(images/css/tab-on-right.png) no-repeat top right;
}
.tabs li.selected a
{
    background:url(images/css/tab-on-left.png) no-repeat top left;
    color:#000;
}
.tab
{
}

/* FOOTER ELEMENTS
----------------------------------------------------------*/
/* office list */
#footer .office_list ul
{
    margin:0;
    padding:0;
}
#footer .office_list li
{
    list-style:none;
    font-size:12px;
    color:#212D3F;
    float:left;
    margin-right:40px;
}
#footer .office_list li .name
{
    text-transform:uppercase;
    margin-bottom:7px;
}
#footer .office_list li .name a
{
    color:#212D3F;
}
#footer .office_list li .address
{
    margin-bottom:7px;
}

/* conveyancing menu */
#footer .conveyancing_menu
{
    float:left;
    font-size:12px;
}
#footer .conveyancing_menu label
{
    display:block;
    text-transform:uppercase;
    margin-bottom:7px;
}
#footer .conveyancing_menu ul
{
    margin:0;
    padding:0;
}
#footer .conveyancing_menu li
{
    list-style:none;
    margin-bottom:3px;
}

/* footer menu */
#footer .footer_menu
{
    position:absolute;
    left:0;
    top:110px;
}
#footer .footer_menu ul
{
    margin:0;
    padding:0;
}
#footer .footer_menu li
{
    list-style:none;
    font-size:11px;
    float:left;
}
#footer .footer_menu li a
{
    color:#212D3F;
    text-decoration:none;
    padding-right:6px;
    border-right:1px solid #212D3F;
    margin-right:6px;
}
#footer .footer_menu li.last a
{
    padding:0;
    border:0;
    margin:0;
}

/* copyright */
#footer .copyright
{
    position:absolute;
    top:140px;
    left:0;
    font-size:11px;
    color:#212D3F;
}
#footer .copyright a
{
    color:#212D3F;
}

/* HOME PAGE 
----------------------------------------------------------*/
/* defaults */
#home_page
{
    font-size:12px;
}
#home_page p
{
    line-height:1.5;
}

/* banner */
#home_page #main .banner
{
    width:970px;
    overflow:hidden;
    padding-bottom:130px;
    background:url(images/css/home_banner_bottom.png) no-repeat bottom;
    position:relative;
    margin-bottom:16px;
}
#home_page #main .banner a.get_a_quote
{
    position:absolute;
    overflow:hidden;
    bottom:51px;
    left:341px;
    width:289px;
    height:53px;
    display:block;
}
#home_page #main .banner a.get_a_quote span
{
    margin-left:-2000px;
}

/* boxes */
#home_page #main .boxes
{
    height:380px;
    background:url(images/css/home_boxes.png) no-repeat 0 0;
    position:relative;
    margin-right:-20px;
}
#home_page #main .boxes .box
{
    float:left;
    width:319px;
    height:380px;
    overflow:hidden;
    margin-right:6px;
}
#home_page #main .boxes .box .box_content
{
    padding:20px;
}
#home_page #main .boxes h1
{
    margin-top:0;
    font-size:16px;
}
#home_page #main .boxes ul
{
    margin:0;
    padding:0;
}
#home_page #main .boxes li
{
    list-style:none;
    overflow:hidden;
    margin-bottom:20px;
}
#home_page #main .boxes li .icon
{
    float:left;
}
#home_page #main .boxes li .text_with_icon
{
    float:right;
    width:230px;
}
#home_page #main .boxes li .text_with_icon .title
{
    font-size:16px;
    font-weight:bold;
    color:#000;
    margin-bottom:5px;
}
#home_page #main .boxes .grey_block
{
    background:url(images/css/home_grey_block.png) no-repeat 0 0;
    width:269px;
    height:51px;
    overflow:hidden;
}
#home_page #main .boxes .grey_block_content
{
    font-size:14px;
    color:#FFF;
    padding:9px 12px;
    line-height:1.14;
}
#home_page #main .boxes .box3 .first,
#home_page #main .boxes .box3 .second
{
    padding-bottom:1.5em;
}

/* GET A QUOTE NOW PAGE 
----------------------------------------------------------*/
/* main content */
#get_a_quote_now_page .main_content
{
    float:left;
    width:340px;
    font-size:14px;
}

/* quote form */
#get_a_quote_now_page .quote_form_border_top
{
    float:right;
    width:489px;
    padding-top:10px;
    background:url(images/css/quote_form_border_top.png) no-repeat top;
}
#get_a_quote_now_page .quote_form_border_bottom
{
    padding-bottom:10px;
    background:url(images/css/quote_form_border_bottom.png) no-repeat bottom;
}
#get_a_quote_now_page .quote_form
{
    border-left:2px solid #9DE5FE;
    border-right:2px solid #9DE5FE;
    overflow:hidden;
    padding:0 30px 20px 30px;
}
#get_a_quote_now_page .quote_form form
{
    margin:0;
    padding:0;
}
#get_a_quote_now_page .quote_form .title
{
    font-size:18px;
    font-weight:bold;
    color:#000;
    margin-bottom:15px;
}
#get_a_quote_now_page .quote_form .field
{
    margin-bottom:13px;
    overflow:hidden;
}
#get_a_quote_now_page .quote_form .field label
{
    font-size:14px;
    float:left;
    width:102px;
    margin-right:10px;
    padding-top:8px;
}
#get_a_quote_now_page .quote_form .field input,
#get_a_quote_now_page .quote_form .field select
{
    float:left;
    width:286px;
    background:#F4F4F3;
    padding:6px;
    border-top:1px solid #D7D7D6;
    border-left:1px solid #D7D7D6;
    border-right:1px solid #FFF;
    border-bottom:1px solid #FFF;
}
#get_a_quote_now_page .quote_form .field select
{
    width:300px;
}
#get_a_quote_now_page .quote_form .field .required
{
    float:left;
    font-size:14px;
    color:#F9001D;
    font-family:Verdana;
    margin-left:4px;
}
#get_a_quote_now_page .quote_form .button
{
    text-align:center;
}
#get_a_quote_now_page .quote_form .button button
{
    background:url(images/css/quote_form_button.png) no-repeat 0 0;
    width:129px;
    height:28px;
    border:0;
    font-size:14px;
    color:#000;
}

/* NARRATIVE PAGE 
----------------------------------------------------------*/
/* main content */
.narrative_page .main_content
{
    float:left;
    width:666px;
    font-size:14px;
}

/* right column */
.narrative_page .right_column
{
    float:right;
    width:217px;
}

/* BUYING PAGE 
----------------------------------------------------------*/
/* main content */
#buying_page .main_content
{
    float:left;
    width:666px;
    font-size:14px;
}

/* service list */
#buying_page .services
{
    padding:16px 8px 0 8px;
}
#buying_page .services ul
{
    margin:0;
    padding:0;
    border-top:1px solid #EAE9E9;
}
#buying_page .services li
{
    list-style:none;
    border-bottom:1px solid #EAE9E9;
    padding:15px 0;
    overflow:hidden;
}
#buying_page .services li .icon
{
    width:78px;
    height:87px;
    float:left;
    margin-right:20px;
}
#buying_page .services li .text
{
    float:left;
    padding-top:20px;
}
#buying_page .services li .text a
{
    font-weight:bold;
}
#buying_page .services li .text .description
{
    margin-top:8px;
}

/* right column */
#buying_page .right_column
{
    float:right;
    width:217px;
}

/* SELLING PAGE 
----------------------------------------------------------*/
/* main content */
#selling_page .main_content
{
    float:left;
    width:666px;
    font-size:14px;
}

/* right column */
#selling_page .right_column
{
    float:right;
    width:217px;
}

/* ARTICLES PAGE 
----------------------------------------------------------*/
/* main content */
#articles_page .main_content
{
    float:left;
    width:666px;
    font-size:14px;
}

/* right column */
#articles_page .right_column
{
    float:right;
    width:217px;
}

.articles_list ul
{
    margin:0;
    padding:0;
}
.articles_list li
{
    list-style:none;
    border-bottom:1px solid #D5D5D5;
    padding:10px 0;
    font-size:12px;
    font-weight:bold;
}

/* CONTACT US PAGE 
----------------------------------------------------------*/
/* main content */
#contact_us_page .main_content
{
    float:left;
    width:350px;
    font-size:14px;
}
#contact_us_page .main_content p
{
    line-height:1.7;
}

/* contact options */
#contact_us_page .contact_options ul
{
    margin:0;
    padding:0;
}
#contact_us_page .contact_options li
{
    list-style:none;
    border-bottom:1px solid #EAE9E9;
    padding:10px 0;
    font-size:12px;
    line-height:2;
    overflow:hidden;
}
#contact_us_page .contact_options li .icon
{
    float:left;
    width:64px;
    height:50px;
    background-image:url(images/css/contact_us_icons.png);
    background-repeat:no-repeat;
}
#contact_us_page .contact_options li.by_phone .icon
{
    background-position:0 0;
}
#contact_us_page .contact_options li.by_fax .icon
{
    background-position:0 -63px;
}
#contact_us_page .contact_options li.by_email .icon
{
    background-position:0 -136px;
}
#contact_us_page .contact_options li.by_mail .icon
{
    background-position:0 -217px;
}
#contact_us_page .contact_options li.in_person .icon
{
    background-position:0 -287px;
}
#contact_us_page .contact_options li.in_person
{
    border:0;
}
#contact_us_page .contact_options li .text
{
    float:left;
    padding-top:10px;
}
#contact_us_page .contact_options li .text label
{
    font-weight:bold;
    float:left;
    width:80px;
}
#contact_us_page .contact_options li .text div
{
    float:left;
}
#contact_us_page .contact_options li li
{
    border:0;
    padding:0;
    margin-bottom:20px;
}
#contact_us_page .contact_options li .text li label
{
    float:none;
    width:auto;
}

/* contact form */
#contact_us_page .contact_form_border_top
{
    float:right;
    width:503px;
    padding-top:10px;
    background:url(images/css/contact_form_border_top.png) no-repeat 0 0;
}
#contact_us_page .contact_form_border_bottom
{
    padding-right:14px;
    padding-bottom:46px;
    background:url(images/css/contact_form_border_bottom.png) no-repeat bottom;
}
#contact_us_page .contact_form
{
    overflow:hidden;
    padding:0 30px 20px 30px;
}
#contact_us_page .contact_form form
{
    margin:0;
    padding:0;
}
#contact_us_page .contact_form .title
{
    font-size:18px;
    font-weight:bold;
    color:#000;
    margin-bottom:15px;
}
#contact_us_page .contact_form .field
{
    margin-bottom:13px;
    overflow:hidden;
    float:left;
}
#contact_us_page .contact_form .field_last_name,
#contact_us_page .contact_form .field_phone
{
    float:right;
}
#contact_us_page .contact_form .field label
{
    font-size:14px;
    display:block;
    margin-bottom:5px;
}
#contact_us_page .contact_form .field input,
#contact_us_page .contact_form .field textarea
{
    width:190px;
    background:#F4F4F3;
    padding:6px;
    border-top:1px solid #D7D7D6;
    border-left:1px solid #D7D7D6;
    border-right:1px solid #FFF;
    border-bottom:1px solid #FFF;
}
#contact_us_page .contact_form .field textarea
{
    width:410px;
    height:130px;
}
#contact_us_page .contact_form .button
{
    clear:both;
    text-align:center;
}
#contact_us_page .contact_form .button button
{
    background:url(images/css/contact_form_button.png) no-repeat 0 0;
    width:131px;
    height:31px;
    border:0;
    font-size:14px;
    color:#000;
}

/* MISC
----------------------------------------------------------*/
/* testimonial */
.testimonial
{
    width:217px;
    padding-top:50px;
    background:url(images/css/testimonial_quotes.png) no-repeat 0 0;
}
.testimonial .text
{
    font-size:16px;
    color:#1F89B5;
    line-height:1.38;
}
.testimonial .text p
{
    margin-bottom:7px;
}
.testimonial .author
{
    font-size:11px;
    color:#07354F;
}

/* get a quote button */
.get_a_quote_button
{
    width:208px;
    margin-bottom:30px;
}
.get_a_quote_button a
{
    display:block;
    height:44px;
    background:url(images/css/get_a_quote_button.gif) no-repeat 0 0;
    font-size:23px;
    font-weight:bold;
    color:#000;
    text-decoration:none;
    line-height:44px;
    padding-left:60px;
}

/* articles & faqs button */
.articles_button
{
    width:208px;
    margin-bottom:30px;
}
.articles_button a
{
    display:block;
    height:44px;
    background:url(images/css/articles_button.png) no-repeat 0 0;
    font-size:21px;
    font-weight:bold;
    color:#000;
    text-decoration:none;
    line-height:44px;
    padding-left:35px;
}

.field_honeypot {
    display: none;
}