/*
Standard colours:
Group purple (for text): #96c;
Group highlight purple: #594381;
Umbrella dark blue (for text) #32268b;
Umbrella light blue (for heading text) #a4b8f1;
Insurance green: #8b9b23;
Insurance highlight green: #b2c22b;
Insurance bulleted list backgrounds: #34303e;
Accountancy orange (for graphical headings): #d2991c;
Accountancy orange (speech bubble background): #A26700;
Software Grey (for graphical headings): #9a9a9a;
*/

/* css reset */
html,body{margin:0;padding:0;border:0;font-weight:normal;font-style:normal;text-align:left;}/* don't specify font-family:inherit otherwise IE6 won't do fixed footers! */
div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,dd,dl,dt,li,ol,ul,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;font-weight:normal;font-style:normal;text-align:left;font-family:inherit;}
table{border-collapse:collapse;border-spacing:0;}
ol,ul{list-style:none;}
q:before,q:after,blockquote:before,blockquote:after{content:"";}
b,strong{font-weight:bold}
a img{border: 0;}

/* structure / layout */

.borderless {BORDER: 0px; BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px; margin-bottom: 0px;}

* {margin:0;padding:0}
/* commented backslash hack v2 \*/
html, body
{
	height:100%;
}
/* end hack */
html
{
	position:relative;
	width:100%;
}
body {
    position:relative;
    width:100%;
}
.redText {
    color: red;
}
.outer{
	width:890px;
	margin-left:auto;
	margin-right:auto;
	margin-top:0;
	margin-bottom:-40px;
	min-height:100%;
}
.header{
	position:absolute;
	top:6px;
    width:100%;
	height:112px;
	z-index:3;
    left: 1px;
}
.header .fixedWidth
{
    position:relative;
    width:890px;
    height:112px;
    margin-left:auto;
    margin-right:auto;
    top: 0px;
    left: -1px;
}
.clearHeader{/*needed to make room for header*/
	height:112px;
}
.footer {
	position:relative;
	clear:both;
	width:890px;
	margin:0 auto;
	height:38px;
}
.clearFooter{
    clear:both;
    height:40px; /* .footer+2px */
}
* > html .clearFooter /* ie mac styles */
{
    float:left;
    width:100%;
}
.centerContent {
	width:100%;
	float:left;
	position:relative;
/*	z-index:1;*/
	margin:0 -1px; /* moz fix */
	min-height:100%;
}
body>form
{
    height:100%;
}

/* element styles */
html
{
	overflow-y:scroll;
}

body
{
    color:#8f8c94;
    color:#bfbfbf;
    font-family:tahoma, Arial, Helvetica, sans-serif;
    font-size:80%;
    line-height:130%;
    background-color:#19191b;
    background-position:center top;
    background-repeat:no-repeat;
}
body.group
{
	background-image:url(../img/group/bg_group.jpg);
}
body.umbrella
{
	background-image:url(../img/umbrella/bg_umbrella.jpg);
}
body.insurance
{
	background-image:url(../img/insurance/bg_insurance.jpg);
}
body.accountancy
{
	background-image:url(../img/accountancy/bg_accountancy.jpg);
}
body.software
{
	background-image:url(../img/software/bg_software.jpg);
}
h1
{
    font-size:155%;
    font-weight:bold;
    margin-bottom:0.7em;
    padding-left:20px;
    padding-top:0;
    font-family:Verdana, helvetica, Sans-Serif;
    color:#066;
    background:url(../img/h1_bg-trans.png) left top no-repeat;
}
h2
{
    font-size:135%;
    font-weight:bold;
    padding:0.7em 0 0.4em;
    color:white;
    font-family:Arial, helvetica, Sans-Serif;
    text-align:left;
}
h2:first-child
{
    padding-top:0.3em;
}
h3
{
    font-size:115%;
    font-weight:bold;
    padding:1em 0 0.2em;
}
h3:first-child
{
    padding:0.6em 0;
}
h4
{
    font-size:100%;
    font-weight:bold;
    margin:0.6em 0;
}
p
{
    padding-bottom:1em;
}
em
{
    color:White;
    font-style:italic;
}
ul + p
{
    padding-top:1em;
}
ul,
ol
{
    list-style-position: outside;
    margin-bottom:1em;
    margin-left:2em;
    line-height:150%;
}
p + ul
{
    position:relative;
    margin-top:-0.8em;
}
ul li
{
    list-style-type: disc;
}
ol li
{
    list-style-type: decimal;
}
table
{
    border-top:3px solid #999;
    border-left:3px solid #999;
    border-right:2px solid #999;
    border-bottom:2px solid #999;
    border:2px solid #999;
    margin-bottom:1em;
}
th,
td
{
    padding:3px;
    border-right:1px solid #999;
    border-bottom:1px solid #999;
}
th
{
    font-weight:bold;
    text-align:center;
    border-bottom-width:2px;
}
td
{
    
}
td p
{
    margin-bottom:0;
}
dl
{
    padding-bottom:1em;
}
dt
{
    color:White;
    font-weight:bold;
}
dd
{
    padding-bottom:0.5em;
}
a
{
    color:#aaa;
    color:#bfbfbf;
    font-weight:inherit;
}
a:hover
{
    color:white;
    outline:none;
}
a:active
{
    outline:none;
}
b
{
    font-weight:bold;
}
address
{
    padding-top:1em;
    margin-left:0em;
    margin-bottom:1em;
    line-height:140%;
}


/* utility styles */

.center
{
    text-align:center;
}
.left
{
    float:left;
    margin-right:1.5em;
}
.right
{
    float:right;
    margin-left:1.5em;
}
.clear
{
    clear:both;
}
.transbg
{
    background-color:rgba(0,0,0,0.83);
}
.hand
{
    cursor:pointer;
}
.hide
{
    display:none;
}
.image_with_caption
{
    display:inline-block;
}
.image_with_caption .caption
{
    display:block;
    text-align:center;
}
td.number
{
    text-align:right;
}
.offleft
{
    position:relative;
    top:0;
    left:-99999px;
}
.preload
{
    display:none;
}
.trans_panel
{
    overflow:hidden;
    position:relative;
}
.trans_panel .content
{
    position:relative;
}
.trans_panel .content img {
    display:inline;
    position:relative;
}

/* Menu */
.menu
{
    display:block;
    position:absolute;
	top:148px;
    left:15px;
    margin:0;
	text-indent:0;
	line-height:100%;
}
.menu li {
    list-style-type:none;
    text-indent:0;
    margin-bottom:15px;
    margin-bottom:19px;
}
/* Override for accountancy (which has lots of menu items) */
body.accountancy .menu li
{
    margin-bottom:12px;
}
.menu a
{
    position:relative;
    top:-1px;
    left:0;
    display:block;
    margin-left:12px;
    text-align:left;
	text-decoration:none;
	color:#B5A8CF;
}
.menu a:hover
{
    color:White;
}
.menu li.current
{
    border-left:6px solid;
}
.menu li.current a
{
    margin-left:6px;
    color:White;
}
/* menu highlight colours for different products */
body.group .menu li.current
{
    border-left-color:#594381;
    border-left-color:#96c;
}
body.insurance .menu li.current
{
    border-left-color:#b2c22b;
}
body.umbrella .menu li.current
{
    border-left-color:#a4b8f1;
}
body.accountancy .menu li.current
{
    border-left-color:#d2991c;
}
body.software .menu li.current
{
    border-left-color:#9a9a9a;
}

/* Product links */
/* Many styles shared by header on group site and sidebar on other sites */
.header .products
{
    position:absolute;
    top:48px;
    left:128px;
    width:500px;
}
.sidebar .products
{
    position:relative;
    top:0;
    left:0;
    width:215px;
}
.header .products .otherJmkSites
{
    display:none;
    position:absolute;
    top:-20px;
    left:0;
    width:200px;
    height:30px;
    background:url(../img/group/title_other_jmk_sites-trans.png) left top no-repeat;
}
.products ul
{
    margin:0;
    height:66px;
    padding:0;
    z-index:200;
}
.products ul li
{
    display:block;
    float:left;
    height:66px;
    list-style-type:none;
}
.products ul li a
{
    display:block;
    position:relative;
    overflow:hidden;
    width:55px;
    height:66px;
    text-decoration:none;
}
.header .products ul li:first-child a,
.sidebar .products ul li:first-child a
{
    margin-left:0;
}
.header .products ul li a
{
    margin-left:24px;
}
.sidebar .products ul li a
{
    margin-left:24px;
}
.products a.group
{
    background:transparent url(../img/logo_sm_purple-trans.png) left top no-repeat;
}
.products a.umbrella
{
    background:transparent url(../img/logo_sm_blue-trans.png) left top no-repeat;
}
.products a.insurance
{
    background:transparent url(../img/logo_sm_green-trans.png) left top no-repeat;
}
.products a.accounting
{
    background:transparent url(../img/logo_sm_orange-trans.png) left top no-repeat;
}
.products a.software
{
    background:transparent url(../img/logo_sm_grey-trans.png) left top no-repeat;
}
.products a.blank
{
    background:transparent url(../img/logo_sm_blank-trans.png) left top no-repeat;
}
.products ul li a:hover
{
    background-position:-55px -4px;
}

/* Product Info (visible to users without CSS and on hover for users with CSS + JS) */
.header .line
{
    display:none;
    position:absolute;
    top:66px;
    height:2px;
    border-bottom:1px solid;
}
.line.umbrella
{
    left:1px;
    width:313px;
    background-color:#4035a9;
    border-bottom-color:#333;
}
.line.insurance
{
    left:80px;
    width:234px;
    background-color:#b2bf40;
    border-bottom-color:#474F0F;
}
.line.accounting
{
    left:159px;
    width:155px;
    background-color:#bf8000;
    border-bottom-color:#5F3A00;
}
.line.software
{
    left:238px;
    width:76px;
    background-color:#8a8a8a;
    border-bottom-color:#4F4A4A;
}

/* Product Info Speech Bubbles */
.speechBubble
{
    width:213px;
}
.header .speechBubble
{
    display:none;
    position:absolute;
    left:314px;
    top:24px;
    overflow:hidden;
}
.sidebar .speechBubble
{
    position:relative;
}
.speechBubble .top
{
    position:relative;
    background-color:transparent;
    background-position:left top;
    background-repeat:no-repeat;
}
.header .speechBubble .top
{
    height:19px;
}
.sidebar .speechBubble .top
{
    height:33px;
}
.header .speechBubble.umbrella .top
{
    background-image:url(../img/info_top_umbrella-trans.png);
}
.header .speechBubble.insurance .top
{
    background-image:url(../img/info_top_insurance-trans.png);
}
.header .speechBubble.accounting .top
{
    background-image:url(../img/info_top_accountancy-trans.png);
}
.header .speechBubble.software .top
{
    background-image:url(../img/info_top_software-trans.png);
}
.sidebar .speechBubble.group .top
{
    background-image:url(../img/products_speech_bubble_purple-trans.png);
}
.sidebar .speechBubble.umbrella .top
{
    background-image:url(../img/products_speech_bubble_blue-trans.png);
}
.sidebar .speechBubble.insurance .top
{
    background-image:url(../img/products_speech_bubble_green-trans.png);
}
.sidebar .speechBubble.accounting .top
{
    background-image:url(../img/products_speech_bubble_orange-trans.png);
}
.sidebar .speechBubble.software .top
{
    background-image:url(../img/products_speech_bubble_grey-trans.png);
}
.sidebar .speechBubble .body h3
{
    color:White;
}
.speechBubble .body
{
    padding:6px 18px 0;
    width:177px;
    color:White;
}
.header .speechBubble.umbrella .body
{
    background-color:#4035a9;
}
.header .speechBubble.insurance .body
{
    background-color:#b2bf40;
}
.header .speechBubble.accounting .body
{
    background-color:#bf8000;
}
.header .speechBubble.software .body
{
    background-color:#8a8a8a;
}
.sidebar .speechBubble.group .body
{
    background-color:#614a8e;
}
.sidebar .speechBubble.umbrella .body
{
    background-color:#362d90;
}
.sidebar .speechBubble.insurance .body
{
    background-color:#96a434;
}
.sidebar .speechBubble.accounting .body
{
    background-color:#a26700;
}
.sidebar .speechBubble.software .body
{
    background-color:#8a8a8a;
}
.speechBubble .body>*
{
    position:relative;
    top:-18px;
    left:0;
}
.speechBubble .body h3
{
    color:white;
    font-size:100%;
    font-weight:bold;
}
.speechBubble a
{
    display:block;
    margin:0;
    color:White;
    text-align:right;
}

/* account controls (product sites only) */
div.accountControls
{
    display:none;
    position:absolute;
    top:0;
    right:0;
}
body.umbrella div.accountControls
{
    display:block;
}

/* Sign Up */
a.signup
{
    display:block;
    position:absolute;
    top:18px;
    right:-4px;
    width:155px;
    height:45px;
    background:transparent left top no-repeat;
    text-decoration:none;
}
a.signup:hover
{
    background-position:-155px 0;
}
body.group a.signup
{
    background-image:url(../img/button_register_now_purple-trans.png);
}
body.umbrella a.signup
{
    background-image:url(../img/button_register_now_blue-trans.png);
}
body.insurance a.signup
{
    background-image:url(../img/button_register_now_green-trans.png);
}
body.accountancy a.signup
{
    background-image:url(../img/button_register_now_orange-trans.png);
}
body.software a.signup
{
    background-image:url(../img/button_register_now_grey-trans.png);
}

/* log in area */
.login
{
    position:absolute;
    top:38px;
    top:80px;
    right:0;
    text-align:right;
}
.login label
{
    display:block;
    width:213px;
    text-align:right;
    
}
.login label.password
{
    margin-top:10px;
    margin-bottom:6px;
}
.login input[type="text"],
.login input[type="password"]
{
    width:143px;
    height:18px;
    margin-left:4px;
    border:1px solid #a4a1a8;
}
.login input[type="image"]
{
    width:63px;
    height:18px;
}

/* Live Chat and Callback buttons / links */
a.liveSupport,
a.callBack,
a.referButton
{
    display:block;
    position:relative;
    left:-3px;
    top:0;
    width:221px;
    height:67px;
    background:left top no-repeat;
    overflow:hidden;
    cursor:pointer;
}
a.liveSupport
{
    display:none;
    margin-top:10px;
    margin-bottom:9px;
    background-image:url(../img/umbrella/live-support-sprite-trans.png);
}
a.liveSupport:hover
{
    background-position:0 -67px;
}
a.callBack
{
    margin-top:10px;
    background-image:url(../img/umbrella/call-back-sprite-trans.png);
}
a.callBack:hover
{
    background-position:0 -67px;
}
a.referButton
{
    background-image:url(../img/umbrella/refer-button-sprite-trans.png);
    text-decoration:none;
}
a.referButton:hover
{
    background-position:0 -67px;
}


/* Body Text */
.mainContent
{
    float:left;
    width:566px;
    position:relative;
    background:transparent url(../img/body_top_bg-trans.png) left top no-repeat;
    overflow:visible;
}
/* vertical position of main content (also affects sidebar position) */
body .centerContent
{
    padding-top:206px;
}
/* override for group site */
body.group .centerContent
{
    padding-top:166px;
}
/* override for Accountancy site (which has more menu items) */
body.accountancy .centerContent
{
    padding-top:320px;
}
body.group .centerContent
{
    padding-top:200px;
}
body.umbrella .centerContent
{
    padding-top:230px;
}
.mainContent h1
{
    height:46px;
    margin-bottom:0;
    background:transparent 26px 19px no-repeat;
}
.mainContent h2
{
    font-size:100%;
}
.mainContent h3
{
    font-size:100%;
}
.mainContent ul,
.mainContent ol,
.mainContent .quote
{
    margin-top:0.5em;
    margin-left:1em;
    padding-top:1em;
    padding-bottom:1em;
    padding-left:2.5em;
    padding-right:1em;
    background:#34303e url(../img/insurance/list_top.png) left top no-repeat;
}
.mainContent .quote
{
    padding:1em 2em 0.5em;
}
.mainContent .quote p
{
    line-height:140%;
}
.mainContent .quote+p
{
    padding-top:20px;
    padding-left:1em;
    padding-bottom:2em;
    background:url(../img/umbrella/quote-arrow-trans.png) left top no-repeat;
    
}
.mainContent hr
{
    position:relative;
    left:-54px;
    width:615px;
    height:169px;
    margin:-40px 0 -50px;
    border:none;
    background-image:url(../img/line_break1-trans.png);
    background-repeat:no-repeat;
    z-index:0;
}
.mainContent hr.alt
{
    left:-54px;
    margin-top:-20px;
    margin-bottom:-70px;
    background-image:url(../img/line_break2-trans.png);
}
.mainContent hr.last
{
    height:63px;
    left:-54px;
    margin-top:20px;
    margin-bottom:0px;
    background-image:url(../img/line_break3-trans.png);
}
/* styles for IE6&7 (all in 1 place) */
body.group .mainContent hr
{
    color:#96c;
}
body.umbrella .mainContent hr
{
    color:#a4b8f1;
}
body.insurance .mainContent hr
{
    color:#b2c22b;
}
body.accountancy .mainContent hr
{
    color:#d2991c;
}
body.software .mainContent hr
{
    color:#9a9a9a;
}

/* Graphical Page Titles */
body.group.underConstruction .mainContent>h1
{
    background-image:url(../img/group/title_under_construction-trans.png);
}
body.group.homePage .mainContent>h1
{
    background-image:url(../img/group/title_welcome-trans.png);
}
body.group.homePage.transbg>h1
{
    height:30px;
    background-image:url(../img/group/title_news-trans.png);
    background-position:-2px 0;
}
body.group.aboutPage .mainContent h1
{
    background-image:url(../img/group/title_about_jmk_group-trans.png);
}
body.group.pressReleasePage .mainContent h1
{
    background-image:url(../img/group/title_press_release-trans.png);
}
body.group.pressReleasesPage .mainContent h1
{
    background-image:url(../img/group/title_press_releases-trans.png);
}
body.group.productsPage .mainContent h1
{
    background-image:url(../img/group/title_jmks_products-trans.png);
}
body.group.competitionPage .mainContent h1
{
    background-image:url(../img/group/title_competition-trans.png);
}
body.group.newsPage .mainContent h1
{
    background-image:url(../img/group/title_news-trans.png);
}
body.group.contactUsPage .mainContent h1
{
    background-image:url(../img/group/title_contact_us-trans.png);
}
body.group.competitionPage .mainContent h1
{
    background-image:url(../img/group/title_competition-trans.png);
}
body.group.privacyPolicyPage .mainContent h1
{
    background-image:url(../img/group/title_privacy_policy-trans.png);
}

body.umbrella.homePage .mainContent h1
{
    background-image:url(../img/umbrella/title_welcome_umbrella-trans.png);
}
body.umbrella.contractorsPage .mainContent h1
{
    background-image:url(../img/umbrella/title_contractors_umbrella-trans.png);
}
body.umbrella.offerPage .mainContent h1
{
    background-image:url(../img/umbrella/title_offer_umbrella-trans.png);
}
body.umbrella.agenciesPage .mainContent h1
{
    background-image:url(../img/umbrella/title_agencies_umbrella-trans.png);
}
body.umbrella.agencyTestimonialsPage .mainContent h1
{
    background-image:url(../img/umbrella/title_agency_testimonials-trans.png);
}
body.umbrella.benefitsPage .mainContent h1
{
    background-image:url(../img/umbrella/title_benefits_umbrella-trans.png);
}
body.umbrella.contactUsPage .mainContent h1
{
    background-image:url(../img/umbrella/title_contact_us_umbrella-trans.png);
}

body.insurance.homePage .mainContent h1
{
    background-image:url(../img/insurance/title_welcome_insurance-trans.png);
}
body.insurance.productsPage .mainContent h1
{
    background-image:url(../img/insurance/title_products_insurance-trans.png);
}
body.insurance.reviewPage .mainContent h1
{
    background-image:url(../img/insurance/title_review_insurance-trans.png);
}
body.insurance.reviewFormPage .mainContent h1
{
    background-image:url(../img/insurance/title_request_your_free_insurance_review-trans.png);
}
body.insurance.riskManagementPage .mainContent h1
{
    background-image:url(../img/insurance/title_risk_management_insurance-trans.png);
}

body.accountancy.homePage .mainContent h1
{
    background-image:url(../img/accountancy/title-welcome-trans.png);
}
body.accountancy.addingValuePage .mainContent h1
{
    background-image:url(../img/accountancy/title-adding-value-trans.png);
}
body.accountancy.personalTaxPage .mainContent h1
{
    background-image:url(../img/accountancy/title-personal-tax-trans.png);
}
body.accountancy.payrollSolutionsPage .mainContent h1
{
    background-image:url(../img/accountancy/title-payroll-solutions-trans.png);
}
body.accountancy.constructionIndustrySchemePage .mainContent h1
{
    background-image:url(../img/accountancy/title-construction-industry-scheme-trans.png);
}
body.accountancy.financeDirectorServicesPage .mainContent h1
{
    background-image:url(../img/accountancy/title-finance-director-services-trans.png);
}
body.accountancy.virtualAccountsDepartmentPage .mainContent h1
{
    background-image:url(../img/accountancy/title-virtual-accounts-department-trans.png);
}
body.accountancy.computerisingYourSystemsPage .mainContent h1
{
    background-image:url(../img/accountancy/title-computerising-your-systems-trans.png);
}
body.accountancy.staffPage .mainContent h1
{
    background-image:url(../img/accountancy/title-staff-trans.png);
}
body.accountancy.contactUsPage .mainContent h1
{
    background-image:url(../img/accountancy/title-contact-us-trans.png);
}
body.accountancy.businessBankingPage .mainContent h1
{
    background-image:url(../img/accountancy/title-business-banking-trans.png);
}
body.accountancy.companyFormationPage .mainContent h1
{
    background-image:url(../img/accountancy/title-company-formation-trans.png);
}


body.software.homePage .mainContent h1
{
    background-image:url(../img/software/title-welcome-trans.png);
}

.mainContent .transbg
{
    width:510px;
    padding:0 28px 14px;
}
.group.productsPage .mainContent .transbg
{
    padding-bottom:2em;
}
/* logo links to product sites */
.group.productsPage .mainContent h2 a
{
    position:relative;
    display:block;
    float:right;
    margin-left:10px;
    width:55px;
    height:66px;
    overflow:hidden;
    background:left -16 no-repeat;
    text-decoration:none;
}
.group.productsPage .mainContent h2 a.umbrella
{
    background-image:url(../img/logo_sm_blue-trans.png);
}
.group.productsPage .mainContent h2 a.insurance
{
    background-image:url(../img/logo_sm_green-trans.png);
}
.group.productsPage .mainContent h2 a.accountancy
{
    background-image:url(../img/logo_sm_orange-trans.png);
}
.group.productsPage .mainContent h2 a.software
{
    background-image:url(../img/logo_sm_grey-trans.png);
}
.group.productsPage .mainContent h2 a:hover
{
    background-position:-55px 0;
}


.mainContent p
{
    position:relative;
    text-align:justify;
    z-index:1;
    top: 1px;
    left: -2px;
}
.mainContent a
{
    z-index:2;
}

.mainContent .accreditations
{
    margin-top:3em;
    overflow:auto;
    text-align:center;
}
.mainContent .accreditations img
{
    float:left;
    margin-left:67px;
}
.mainContent .accreditations img:first-child
{
    position:relative;
    margin-left:-8px;
}

/* Umbrella download links */
p.downloads a
{
    display:inline-block;
    width:111px;
    margin-right:22px;
    margin-bottom:1em;
    vertical-align:top;
}
p.downloads a.lastInRow
{
    margin-right:0;
}
p.downloads a img
{
    float:left;
}

/* Insurance Review Page */
/* Make room for the large button */
body.insurance.reviewPage .centerContent
{
    padding-bottom:20px;
}
body.insurance.reviewPage .mainContent a.button_large
{
    display:block;
    position:relative;
    width:255px;
    height:71px;
    left:290px;
    top:6px;
    margin-bottom:10px;
    margin-top:-40px;
    background:transparent url(../img/insurance/btn_free_review-trans.png) left top no-repeat;
    text-decoration:none;
}
body.insurance.reviewPage .mainContent a.button_large:hover
{
    background-position:0px -71px;
}

/* Product Names */
/* Contractors Page */
.mainContent span.productName
{
    font-weight:bold;
}
.mainContent span.productName.group
{
    color:#96c;
}
.mainContent span.productName.umbrella
{
    color:#a4b8f1;
}
.mainContent span.productName.insurance
{
    color:#8b9b23;
}
.mainContent span.productName.accountancy
{
    color:#d2991c;
}
.mainContent span.productName.software
{
    color:#9a9a9a;
}

/* Sidebar */
.sidebar
{
    float:right;
    position:relative;
    width:215px;
    overflow:visible;
    margin-top:-139px;
    margin-bottom:2em;
    font-size:94%;
}
/* group site has sidebar in different vertical position */
body.group .sidebar
{
    margin-top:-178px;
}
/* accountancy site has maincontent 60px lower to cater for more menu items */
/* so sidebar position needs to take this into account (since they're linked) */
body.accountancy .sidebar
{
    margin-top:-199px
}
.sidebar h2,
.sidebar h3
{
    font-weight:normal;
}
.sidebar h2
{
    position:relative;
    color:White;
    z-index:2;
}
.group .sidebar h2
{
    color:#96c;
}
.sidebar h3
{
    color:#96c;
}
.umbrella .sidebar h3
{
    color:#a4b8f1;
}
.insurance .sidebar h3
{
    color:#b2c22b;
}
.accountancy .sidebar h3
{
    color:#d2991c;
}
.software .sidebar h3
{
    color:#9a9a9a;
}


.sidebar .contactDetails
{
    padding-top:30px;
}
.sidebar dl
{
    width:100%;
    overflow:auto;
}
.sidebar dt,
.sidebar dd
{
    float:left;
}
.sidebar dt
{
    width:3.6em;
    clear:both;
}
.sidebar dd
{
    color:White;
    white-space:nowrap;
}
.sidebar p
{
    position:relative;
    text-align:justify;
    z-index:2;
}
.sidebar address+p
{
    margin-top:0.5em;
}
.sidebar address
{
    position:relative;
    margin:0;
    padding-top:0;
    color:white;
    z-index:2;
}
.sidebar img.primo
{
    position:relative;
    margin-top:-60px;
    margin-left:-10px;
    z-index:1;
}

/* Contact Form */
fieldset
{
    margin-top:10px;
    border-top:1px solid white;
    padding-top:6px;
}
fieldset legend
{
    display:inline;
    margin-bottom:6px;
    padding-right:10px;
    color:White;
    font-weight:bold;
    font-size:120%;
}
div.row
{
    clear:both;
    margin:2px 0px;
    padding:6px 4px 6px 20px;
    overflow:auto;
}
div.row label
{
    float:left;
    display:block;
}
div.row span.helperText
{
    float:right;
    margin-right:1em;
}
div.row textarea,
div.row input
{
    float:right;
    width:260px;
    padding:2px;
    border:0;
    background:#d2d2d4 url(../img/form_field_bg.png) left top repeat-x;
}
div.row textarea
{
    font-family:tahoma,Arial,Helvetica,sans-serif;
    font-size:119%;
    height:9em;
}
div.row input[type="checkbox"]
{
    float:right;
    width:auto;
    background: transparent;
    background-image: "";
}
div.row input[type="image"]
{
    display:inline-block;
    float:right;
    width:143px;
    height:45px;
    cursor:pointer;
    background: transparent;
    background-image: "";
}
div.row #Postcode,
div.row #Currentannualpremium,
div.row #Renewaldate
{
    width:100px;
}
div.row fieldset
{
    border:1px solid gray;
    margin:0 6px;
}
div.row fieldset span
{
    display:block;
}
div.row fieldset span label
{
    float:none;
    display:inline;
}
div.row fieldset legend
{
    font-weight:bold;
}
div.requiredRow
{
    border:2px solid #049;
}

/* Error Messages */
div.message.error,
div.row.error
{
	border-left:5px solid #f30;
	color:White;
	background-color:#404F64;
}
div.message.error
{
	margin:0.5em 0;
	padding:0.5em;
	padding-left:44px;
	background-image:url(../img/icon-warning26-trans.png);
	background-position:8px 5px;
	background-repeat:no-repeat;
	font-weight:bold;
}
div.row.error
{
	color:white;
}
div.row.error label
{
    color:white;
}
div.row span.errorText
{
    display:none;
}
div.row.error span.errorText
{
    display:block;
    clear:right;
    float:right;
    margin-top:4px;
    width:260px;
    color:#f30;
    text-align:right;
}
div.error h2
{
    margin-top:4px;
    font-size:150%;
}
div.error p + ul {
    margin-top:-0.5em;
}
div.error ul
{
    margin:auto;
    padding:auto;
    padding-top:0;
    background:none;
}
div.error li
{
    margin:auto;
    padding:auto;
}
div.error p:first-child
{
    margin-top:0;
}

/* Privacy Policy */
.mainContent p.toplinks a
{
    position:relative;
    z-index:3;
}
a.toplink
{
    position:relative;
    display:block;
    text-align:right;
    z-index:1;
}

/* Footer */
.footer
{
    padding:0;
	border:0px solid blue;
    color:#666;
    font-size:10px;
}
.footer a.logo
{
    float:right;
    position:relative;
}
.footer p
{
    float:left;
    margin-top:12px;
}

