* {
    margin: 0;
    padding: 0;
}
#main ul, #main ol, #main li {
    list-style: none;
}
img {
    border: none;
}
form {display: inherit}

/* BCrumb nav
-------------------------------------------------------------------------- */
.text ul li { list-style: none; background: none;}

#zvCalcBodyDefault { font-family: Arial,Helvetica,sans-serif; }

#zvCalcNav ul {list-style: none; margin: 0;}
.step1 {width:600px;background: url(../images/step1.gif) no-repeat;}
.step2 {width:600px;background: url(../images/step2.gif) no-repeat;}
.step3 {width:972px;background: url(../images/step3.gif) no-repeat;}
.step4 {width:600px;background: url(../images/step4.gif) no-repeat;}
#zvCalcNav ul li {
    float: left;
    height: 40px;
    width: 25%;
    padding: 1em 0 0;
    font-size: 1.1em;
	font-weight: 700;
    text-align:center;
    color: #5476d7;
}
#zvCalcNav a {
    text-decoration: none;
    color:#5476d7;
    font-weight: 700;
}
#zvCalcNav a.active {color:#fff;}

#zvCalcContent {
    margin:0 5px 8px 14px;
}

#zvCalcContent.zvCalcWide {
    width: 949px;
	margin:0 8px 8px 17px;
}

#zvCalcValidationForm {
    border: 1px solid #5476d7;
	position: relative;
}

.zvCalcFormContainer {
    clear: both;
}

/* �berschriften
-------------------------------------------------------------------------- */

p.zvCalcParagraphTitle, .zvCalcParagraphTitle {
    margin: 0;
    padding: .5em;
    font-weight: 700;
    color: #fff;
    background: #a7ccff url(../images/navBg.gif) repeat-x;
}

/* Labels
-------------------------------------------------------------------------- */
.zvCalcElementRowParent {
    border-bottom: 1px solid #a7ccff;
}
.zvCalcElementRow {
    clear: both;
	border-bottom: 1px solid #e5f1ff;
}
.zvCalcElementRow.alt {
    background: none;
}

.zvCalcElementContainer {
    float: left;

}
.zvCalcElementContainer .zvCalcLabel {
    float: left;
    width: 260px;
    height: 100%;
    display: block;
    margin: 0 25px 0 0;
    padding: 8px 10px 8px 0;
	font-size: 11px;
    font-weight: 700;
    text-align: right;
    background: #e5f1ff;
}
.zvCalcElementContainer .zvCalcLabel .requiredFlag {
    color: red;
}
.zvCalcElementContainer p {
	padding: 5px 0 0;
}

.zvCalcHelpButton {
	margin: 8px 3px 8px -5px;
    cursor: pointer;
	float: right;
}

.zvCalcHelpLabel {
	border-bottom: 1px dotted #5476D7;
	cursor: pointer;
}


/* Fehler
-------------------------------------------------------------------------- */
.zvCalcErrors {
    clear: left;
    margin:0;
    padding:.5em;
    color:#c00;
    background:#ffebe3;
    border:1px dashed #c00;
}
.zvCalcElementRow .zvCalcErrors li {

}

/* Formularelemente
-------------------------------------------------------------------------- */
/*.zvCalcElementContainer .zvCalcElementText, .zvCalcElementTextarea, .zvCalcElementSelect{
	width: 230px;
	padding: 3px;
	margin: 10px 0;
	border: 1px solid #ccc;
}*/

.zvCalcElementContainer {
    width: 560px;

}

.zvCalcElementText, .zvCalcElementTextarea, .zvCalcElementSelect {
    width: 230px;
    padding: 1px;
    margin: 5px 0 4px;
    border: 1px solid #ccc;
}

/* a.hoffmann Special Text-Elements with unique width */
.zvCalcElementText-street {
    width: 175px !important;
}

.zvCalcElementText-number {
    width: 30px !important;
    margin-left: 21px !important;
}

.zvCalcElementText-areacode {
    width: 60px !important;
}

.zvCalcElementText-dail {
    width: 145px !important;
    margin-left: 21px !important;
}

.zvCalcElementText-postcode {
    width: 60px !important;
}

.zvCalcElementText-city {
    width: 145px !important;
    margin-left: 21px !important;
}
/* << */

.zvCalcElementContainer .zvCalcElementText {
    float:left;
}
.zvCalcElementContainer .zvCalcElementTextarea {
    float:left;
    height: 70px;
}
.zvCalcElementContainer .zvCalcElementSelect {
	font-size: 11px;
    width: 234px;
	
}
.zvCalcElementContainer .zvCalcElementRadio {
    margin: 4px 5px 6px 0;
    vertical-align: middle;
    border: 1px solid #ccc;
}
.zvCalcElementContainer .zvCalcElementCheckbox {
    margin: 8px 0 0;
}

.zvCalcElementMulti select,
.zvCalcElementMulti input {
    padding: 1px;
    margin: 5px 0;
    border: 1px solid #ccc;
	font-size: 11px;
}
.zvCalcElementMulti label { margin:0;}

.zvCalcElementSubmit {
    padding: 3px 20px;
}

.zvCalcInputError {
    border: 2px solid red !important;
}

.agbAkzeptiert .zvCalcLabel {padding:15px 10px 15px 0;}
.agbAkzeptiert .zvCalcHint {padding: 8px 0px; font-size: 11px}
.agbAkzeptiert .zvCalcElementCheckbox {float: left; margin: 8px 10px 8px 0;}

/*----- Tarifvergleich ----*/
.compare {border: 1px solid #5476d7; width: 710px !important; overflow: hidden;}
.compare .nav {padding: .3em;text-align: right; background: #a3ccff;}
.compare table {font-size: 11px; color: #444;}

.zvCalcInsuranceRateCompareTable {
	margin: 0;
    border-collapse: collapse;
    position:absolute;
    top: 0;
    left: 0;
}
.zvCalcInsuranceRateCompareTable>tr {border: 1px solid red !important;}
.zvCalcInsuranceRateCompareTable th,
.zvCalcInsuranceRateCompareTable td {
    padding: 10px;
    border: 1px solid #ccc;
    //background-color: #fff;
}
.zvCalcInsuranceRateCompareName {
    text-align: left;
	font-weight: 700;
	border: 1px dotted #ccc !important;
	text-align: center;
	background-color: #e5f1ff;
}
.crit {text-align: right; background: #e5f1ff;}
.price {font-size: 20px;}
.zvCalcInsuranceRateCompareName img {
	display: block;
	margin: 0 auto;
}
.zvCalcInsuranceRateCompareCriterion {
    width: 23%;
    vertical-align: top;
    text-align: right;
    background: #e5f1ff;
}
.zvCalcInsuranceRateCompareContent {
	width: 23%;
    vertical-align: top;
}
.zvCalcInsuranceRateCompareTitle {
    font-weight: bold;
}
zvCalcInsuranceRateCompareText {
    
}

.zvCalcInsuranceRateBar {
    width: 100%;
    border-collapse: collapse;
}
.zvCalcInsuranceRateBar td {
    border: none;
    font-size: .9em;
	padding: .4em .6em;
}
.zvCalcInsuranceRatePro {
    background: #3d7f05 url("../images/barbg.gif") repeat-x center;
	color: #fff;
    padding: 5px;
}
.zvCalcInsuranceRateContra {
    background: #a81818;
	padding: 0 !important;
}
#zvCalcCompareTableHolder {
    position: relative;
    overflow: hidden;
	font-size: 11px;
	color: #444;
}
.zvCalcCritTable {
    z-index: 5;	
}
.poweredBy {
    margin: 0;
    padding: .5em;
	font-size: 11px;
	text-align: center;
    color: #fff;
    background: #a7ccff url(../images/navBg.gif) repeat-x;	
}
.poweredBy a {color: #fff;}
.back {margin: 1em 0 0;}

/* Submitbereich
-------------------------------------------------------------------------- */
.zvCalcElementContainerSubmit {
    padding: 5px;
	border-top: 1px dotted #5476d7;
}
.zvCalcElementContainerSubmit a {float: left;}
#next { float: right;}
.zvCalcMoreBtn{float: none;}

/* just 4 you, ie6! */
.lrv a, .lrv #next {position: relative}

/* Hilfefelder
-------------------------------------------------------------------------- */
.zvCalcInfoLinkContainer {
    float: left;
    width: 20px;
    margin: 10px 0 0 5px;
}
.zvCalcInfoLink {

}
.zvCalcInfoContainer {
    clear: left;
    margin: 0;
    padding: 20px 10px;
    font-size: .85em;
    line-height: 150%;
    border-top: 1px solid #a7ccff;
}
.zvCalcInfoContainer .zvCalcInfoTitle {
    font-weight: bold;
}
.zvCalcInfoContainer .zvCalcInfoText {

}

/* Tabelle
-------------------------------------------------------------------------- */
#insuranceRateForm {position: relative;}

.zvCalcResults {
    width: 100%;
	margin: 0 0 2em;
    border: 1px dashed #5476D7;
	border-width:0 1px ;
    border-collapse: collapse;
	font-size: 12px;
}
.zvCalcResults th {
    padding: 5px;
    text-align: left;
    background: #a3ccff;
    color: #003366;
    border-bottom: 1px dashed #5476d7 !important;
}
.zvCalcResults td {
    padding: 5px 10px;
    background: #e5f1ff;
    border: 1px solid #a7ccff;
	border-width: 1px 0;
}

.zvCalcResults tr.first td {
	border-top:1px dashed #5476D7;
}
.zvCalcResults tr.last td {
	border-bottom:1px dashed #5476D7;
}
.zvCalcResults td table td { border: 0 !important;}
.zvCalcResults tr.first td.spc, .zvCalcResults tr.last td.spc, th.spc {border-width: 0 1px !important;}
.zvCalcResults .spc {
	background: #fff;
	border:1px dashed #5476D7;
	border-width:0 1px !important;
	padding:0 4px;
}
.zvCalcResultRowDefault {

}
.zvCalcResultRowAlt,
.zvCalcResultRowAlt td {
    background: #fff !important;
}

td.ilogo {padding: 5px 0;}
.zvCalcResultColCompare {

}
.zvCalcResultColRate {
    width: 25%;
}
.zvCalcResultColRating {
    width: 7%;
}
.zvCalcResultColDentures {
    width: 5%;
    text-align: center;
}
.zvCalcResultColDentures2 {
    width: 5%;
    text-align: center;
}
.zvCalcResultColTreatment {
    width: 5%;
    text-align: center;
}
.zvCalcResultColInlays {
    width: 5%;
    text-align: center;
}
.zvCalcResultColImplants {
    width: 5%;
    text-align: center;
}
.zvCalcResultColSum {
    width: 25%;
padding: 5px 3px 5px 0;
}
.zvCalcResultColSum table{width: auto !important;}
.zvCalcResults{width: auto!important;}
.zvCalcResultColApplication {
    width: 16%;
    text-align: right;
}

.zvCalcRateResults {
    border: none;
    font-size: 1em;
    border-collapse: collapse;
}
.zvCalcRateResults .zvCalcRateResultsPerson {
    color: gray;
    text-align: right;
	padding-right: 7px;
}
.zvCalcRateResults td {
    border: none;
    padding: 3px 0;
}

.zvCalcThRate {
    text-align: center !important;
}

.zvCalcTotalRate {
    font-weight: bold;
    text-align: right;
    font-size: 1em;
    border-top: 1px solid #000;
}

.zvCalcPercentInfo {
	display: none;
	background-color: #e5f1ff;
	padding: 7px;
	border: 2px solid #5476d7;
	font-size: 12px;
}

.zvCalcPercentInfoButton {
    cursor: pointer;	
}

td.ResultSubmit {background: #fff; border: 0;}

.zvCalcInsuranceRateInfo {
    display: none;
    background-color: #e5f1ff;
    padding: 7px;
    border: 2px solid #5476d7;
    font-size: 12px;
}

.zvCalcInsuranceRateName {
    font-weight: bold;
    cursor: pointer;
}

.zvCalcInsuranceRateHover {
    color: #036;
    font-size: 11px;
    cursor: pointer;
    border-bottom: 1px dotted #036; 
} 

#zvCalcDentalChart {
	display: none;
    background-color: #fff;
    padding: 0px;
    font-size: 10px;
}

#zvCalcDentalChart img {
    border: 2px solid #5476d7;
}

.zvCalcDentalChartLink {
	text-decoration: underline;
	color: #00c;
}


/* -------------------------------------------------------------------------- */

.zvCalcClear {
    clear: both;
}

/* Antrag
-------------------------------------------------------------------------- */
.antrag #zvCalcNav {
	height: 46px;
	width: 950px;
    margin: 0 0 20px 0;
	background: url(../images/antrag_head.jpg) no-repeat;
}


.antrag .zvCalcElementRowParent { background: url(../images/labels_bg.jpg) repeat-y;}


.antrag #zvCalcValidationForm { width: 948px;}
.antrag .zvCalcElementRow.alt  { clear: both;}

.antrag .zvCalcElementRow { width: 474px; float: left; clear: right;}
.antrag .zvCalcElementRow.alt { float: left; clear:right; border: 0;}
.antrag .zvCalcElementRow.start { float: left; clear: both; width: 970px;}

.antrag .zvCalcElementContainer { width: 465px;}
.antrag .zvCalcLabel { width: 200px; margin: 0 15px 0 0;}

.antrag .zvCalcElementText, .antrag .zvCalcElementTextarea {width: 200px;}
.antrag .zvCalcElementSelect{width: 208px;}

.antrag .zvCalcElementCheckbox { margin: 10px 5px 10px 0; vertical-align: middle;}

.antrag .zvCalcInfoLinkContainer {margin: 15px 0 0;}

.antrag #zvCalcElementContainerSubmit { clear: both; border-top: 1px solid #a7ccff;}

.antrag .radios { margin-left: .5em;}

.infobox .clear,
.antrag .infobox .clear {display: block;}


/*antrag anfordern */
.anfordern form {border: 1px solid #5476d7; position: relative;padding-bottom:10px;}
.anfordern p { padding: 0 1em 1.5em;}
.anfordern .zvCalcParagraphTitle { margin: 0 0 1.5em; padding: 0.41em 2.5em 0.83em;}

.docs { margin: 0 .5em 2em;}
.docs a {background: url(../images/page_white_acrobat.png) no-repeat center left; padding: 0 0 0 22px; display: none;}
.anfordern .zvCalcElementRow { background: url(../images/labels_bgs.jpg) repeat-y;border-top: 1px solid #a7ccff;}
.anfordern .zvCalcElementContainer { width: 99%; float: none; background: #e5f1ff;}
.anfordern .zvCalcElementContainer .zvCalcElementCheckboxConfirm {float: left;}
.anfordern .zvCalcElementContainer .zvCalcLabel {width: 42%; margin: 0;}
.anfordern .zvCalcElementContainer p {width: 54%; float: right; margin: 0; padding: 5px 0.5em 1.5em; background: #fff;}
.anfordern .zvCalcElementContainer p span {display: block; float: right;}

.anfordern .zvCalcLabel {margin: 0 10px 0 0;}
.anfordern .zvCalcElementCheckbox {float: left; margin: 8px 10px;}
.anfordern .zvCalcHint { font-size:11px;  width:93%;}

.anfordern .zvCalcRadios { float:right; padding-left: 1em; background: #fff; width: 54%}


.clear {clear: both;}

.infobox .clear,
.antrag .infobox .clear {display: block;}

.small {font-size: 10px;}
p.bottom {margin-bottom: 0; padding-bottom: 0;}

/* arag spec */
.anfordern p {padding-bottom: 0;}
.confirma .pshead {margin-top: 8px;}
.confirma .sv label {text-decoration: underline; float: none;}
.confirma .sv .zvCalcElementCheckbox {float: none; margin: 0}
.confirma .label { margin:  .5em 0 .8em 1.5em;}
.confirma .label input {float: left; margin: 0 .5em 0 0;}
.confirma .label label {float: left;}
.confirma .label p, .confirma .label input {display: inline;}
.confirma hr {border-bottom: 1px solid #a7ccff; margin: 0; padding: 0; height: 0; width: 100%;}
.wiederruf { height: 15em; overflow: auto;}
#zvCalcElementconfirm_0 label {padding: 8px 10px 8px 0;}

/* Doc Ajax Loader */
.zvCalcDocLoader {border: 1px solid #5476d7; margin: 0 30px 10px 30px; background-color: #e5f1ff;}
.zvCalcDocLoader span {padding-top: 8px; float: left;}
.zvCalcDocLoader img {display: inline; margin: 10px; float: left !important;}
.zvCalcDocError {border: 1px solid #000; margin: 0 30px 10px 30px; background-color: #ffdddd; display: none;}
.zvCalcDocError span {padding: 8px; float: left;}