input, select, textarea {
  font-size: 100%;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: inherit;
  font-style: inherit;
}

/* Common classes */

.file {
  padding: .1em 0 .1em 22px;
  background-repeat: no-repeat;
  background-position: 0 0;
}

.acrobat, .pdf { background-image: url('images/ico.pdf.gif'); }
.word,    .doc { background-image: url('images/ico.word.gif'); }
.excel,   .xls { background-image: url('images/ico.excel.gif'); }
.archive, .zip { background-image: url('images/ico.archive.gif'); }

.js .datepicker { background: #fff url('images/ico.datepicker.gif') no-repeat 98% 50%; }

.note { color: #7a7a7a; }

.js-hide { display: none; }

#main img { border: 0; }

/* General form elements */

form.generic {}

form.generic img { margin: 0; }

form.generic .field,
form.generic .select,
form.generic .radio,
form.generic .date,
form.generic .single-checkbox {
    margin-bottom: .5em;
    padding: .5em 0;
}

.safari form.generic .field label { margin-top: .5em; }

form.generic .single-checkbox { padding: .5em 0 .35em 0; }

form.generic label strong { cursor: default; }

form.generic .single-checkbox label input,
form.generic .single-checkbox label strong,
form.generic .single-checkbox span.title { float: left; }

form.generic .full-width { width: 20em; }

form.generic .single-checkbox label .note {
    display: block;
    padding-left: 25px;
    margin-bottom: 0;
}

form.generic .single-checkbox label input { margin-right: 7px; }

form.generic .single-checkbox label strong,
form.generic .single-checkbox span.title { width: 435px; }

form.generic .select select,
form.generic select  { width: 208px; }

form.generic .radio label {
    float: left;
    clear: left;
    margin-bottom: .5em;
}
  
form.step2 fieldset#estates .radio label { width: 530px; }

form.generic .radio label input { float: left; }
  
* html form.generic .radio label input { margin: -2px 0 0 0; }
  
* + html form.generic .radio label input { margin: -1px 0 0 0; }

.firefox form.generic .radio label input { top: .1em; }

.safari form.generic .radio label input { top: -.1em; }

form.generic #traveler-control { margin-bottom: 1.5em; }

form.generic #traveler-control span { margin-right: 1em; }

form.generic #traveler-control span.disabled {
    color: #ccc;
    border-color: #ccc;
    cursor: default;
}

form.generic .list p {
    margin-top: 1em;
    margin-bottom: 1em;
}

form.generic .actions { padding-top: .5em; }

form.generic .list label .note { 
    display: block;
    margin-left: 25px;
}

form.generic .actions .submit { float: right; }

form.generic .actions .back {
    margin: 0;
    float: left;
}

form.generic .space { padding-top: 2em; }

form.generic div.error,
form.generic fieldset.error { background: #fffcdd; }

form.generic fieldset.list p { font-weight: bold; }
  
form.generic fieldset.list label {
    display: block;
    margin-bottom: .5em;
    margin-left: 45px;
}

form.generic fieldset.list label input {
    position: relative;
    top: -1px;
    vertical-align: middle;
}

form.generic fieldset.list br { display: none; }
	
.warning {
    background: #fffcdd;
    margin-bottom:1.5em;
    padding:1.5em;
}

.insurance {
    position: relative;
    padding-left: 20px;
}

.insurance legend {
    margin-left: -20px;
    margin-left: -27px !ie;
    margin-bottom: 1em;
    font-weight: bold;
}

.insurance legend input {
    position: relative;
    top: -1px;
    vertical-align: middle;
}

.insurance p label { margin-right: 1.5em; }

.insurance p input {
    vertical-align: middle;
    margin-top: 0;
}

.results { width: 100%; }

.results tbody th,
.results tbody td {
    padding-left: 0;
    background: #fff;
    border-bottom: 1px solid #dad8d9;
}

.results tbody th.last,
.results tbody td.last { border-bottom:1px solid #ba122b; }

.results tbody th { width: 226px; }

table.insurance-results {
    table-layout: fixed;
    width: 100%;
}

.js #travelers .empty { display: none; }

#insurance-select {}

.insurance-results tbody td { text-align: right; }

.insurance-results tbody td.text { text-align: left; }

.insurance-results tfoot th { text-align: right; }

.insurance-results tfoot th.left { text-align: left; }

.insurance-results tfoot td {
    font-weight: bold;
    text-align: right;
}

.step2 .traveller {
    margin-bottom: 1em;
    margin-bottom: 2em !ie;
}

.traveller h3 { margin-bottom: .5em; }

.traveller .personal-data {
    margin-bottom: 1em;
    padding: 0 5px;
}

.traveller .personal-data .container, .type2 .container { width: 520px; }

.type2 .container { margin-bottom: 1.5em; }

.traveller .personal-data .col-1,
.traveller .personal-data .col-2,
.type2 .container .col-1,
.type2 .container .col-2 {
    float: left;
    width: 250px;
    margin-right: 10px;
}

.traveller .personal-data .col-2 {
    margin-right: 0;
}

.type2 .container .col-1 input, .type2 .container .col-1 label,
.type2 .container .col-2 input, .type2 .container .col-2 label { float: left; }

.step2 .traveller label {
    display: block;
    margin: .5em 0;
}

.step2 .traveller span {
    position: relative;
    display: block;
    top: -1px;
}

.step2 .traveller h3 span {
    top: 0;
    display: inline;
    position: static;
}

.traveller .personal-data input { width: 242px; }

.traveller .personal-data textarea {
    position: relative;
    top: -1px;
    margin: 0;
    height: 3.5em;
    overflow: auto;
    width: 242px;
}

.step2 .traveller br { display: none; }

.step2 fieldset.type1 { padding-left: 43px; }

.sum-total {
    display: block;
    margin-bottom: 1.5em;
    padding: 4px 10px;
    text-align: right;
    border-top: 1px solid #ba122b;
    border-bottom: 1px solid #ba122b;
    font-weight: bold;
}

.sum-total strong {
    display: -moz-inline-stack;
    display: inline-block;
    width: 80px;
}

tr.disabled th,
tr.disabled td { color: #999; }

.date-picker-holder {
    position: relative;
    display: inline-block;
    height: 1.2em;
    line-height: 1.2em;
}

.popup-calendar {
    position: absolute;
    display: none;
    width: 163px;
    padding: 5px;
    color: #000;
    background: #fff;
    border: 2px solid #dad8d9;
    text-align: center;
}

.firefox .popup-calendar {
    top: 0;
    left: 0;
}

.show-popup-calendar .popup-calendar { display: block; }

.popup-calendar .year,
.popup-calendar .month {
    position: relative;
    margin: 3px 0;
    padding: 0;
    overflow: hidden;
}

.popup-calendar .link-next,
.popup-calendar .link-prev {
    position: absolute;
    top: 0;
    margin: .25em 5px;
    cursor: pointer;
}

.popup-calendar .link-next { right: 0; }
.popup-calendar .link-prev { left: 0; }
.popup-calendar table { margin: .2em auto 0;border:0; }
.popup-calendar .hide-next .link-next { display: none; }
.popup-calendar .hide-prev .link-prev { display: none; }

div.popup-calendar table th,
div.popup-calendar table td {
    width: 23px;
    padding: 0;
    text-align: center;
    border: 0;
}

div.popup-calendar table thead th {
    background: #dad8d9;
    font-size: .9em;
}

.popup-calendar table a {
    display: block;
    margin: 0; padding: 3px 0;
    border: solid 1px #fff;
    line-height: 100%;
    color: #111 !important;
    text-decoration: none;
}

.popup-calendar .today a { border: solid 1px #ccc; }

.popup-calendar table a.selected,
.popup-calendar table a:hover {
    background-color: #b10021;
    color: #fff !important;
    text-decoration: none !important;
}

.popup-calendar .inactive { color: #aaa; }

ul.simple {
    margin: 0 0 1.5em !important;
    padding: 0 !important;
    list-style: none !important;
}

ul.simple li {
    margin-bottom: 1em;
    padding: 0 !important;
    background: none !important;
}

#waiting {
    position: fixed;
    top: 50%; left: 0;
    width: 100%;
    line-height: 1.2;
    text-align: center;
    z-index: 10;
}

* html #waiting {
	position: absolute;
	top: expression(eval(document.compatMode && document.compatMode == 'CSS1Compat') ? documentElement.scrollTop + ((documentElement.clientHeight - this.clientHeight) / 2 ) : document.body.scrollTop + ((document.body.clientHeight - this.clientHeight) / 2));
}

#waiting div {
    width: 15em;
    margin: 0 auto;
    padding: 1em 0;
    background: #fff;
    color: #ba122b;
    font-size: 1.25em;
    font-weight: bold;
    border: 2px solid #ba122b;
    text-align: center;
}

#civil-insurance { margin-right: 50px; }

#civil-insurance a,
#civil-insurance strong { padding-left: 55px; }

#civil-insurance strong,
#travel-insurance strong { cursor: default; }

#civil-insurance a { background-position: 0 12px; }
#civil-insurance strong { background-position: 0 -88px; }

#travel-insurance a,
#travel-insurance strong {
	padding-left: 50px;
	line-height: 3;
}

#travel-insurance a { background-position: 0 -193px; }
#travel-insurance strong { background-position: 0 -293px; }

#estate-insurance { width: 530px !important; text-align: center; }

#estate-insurance a,
#estate-insurance strong {
	padding-left: 0;
	line-height: 3;
}

#estate-insurance a { background: none; }
#estate-insurance strong { background: none; }

.helps {
    margin-bottom: 2em;
    padding: 5px 10px;
    text-align: right;
    background: #eee;
}

.helps big {
    font-size: 1.5em;
    vertical-align: baseline;
    color: #ba122b;
}

.steps {
    width: 530px;
    margin-bottom: .5em;
    overflow: hidden;
}

.steps p {
    float: left;
    margin-right: 20px;
    padding-right: 5px;
    border-bottom: 2px solid #b9b9b9;
}

.steps p.current { border-color: #bb1229; }
.steps p.passed  { border-color: #dad8d9; }

.steps big,
.steps span {
    color: #888;
    vertical-align: middle;
}

.steps big {
    display: inline-block;
    margin-right: 5px;
    padding: 0em .5em;
    background: #b9b9b9;
    line-height: 1.5;
    font-size: 1.5em;
}

.steps p.current big {
    background: #bb1229;
    color: #fff;
}

.steps p.passed big {
    background: #dad8d9;
    color: #b9b9b9;
}

.steps p.current span { color: #222; }
.steps p.passed span  { color: #bbb; }

.agreement {
    height: 10em;
    margin-bottom: .5em;
    padding: 1em;
    border: 1px solid #bbb;
    overflow: auto;
}

ul.confirmation {
    clear: both;
    margin-left: 6.85em;
    padding-top: .5em;
}

.pseudolink {
    color: #339;
    border-bottom: 1px dashed #339;
    cursor: pointer;
}

.pseudolink:hover {
    color: #c33;
    border-bottom-color: #c33;
}

    .addperson{margin-right:10px;}

#banklinks  { margin-bottom: 1.5em; }

#banklinks .column { margin-bottom: 10px; }

#banklinks a {
    display: block;
    width: 115px;
    height: 35px;
    text-indent: -9999pt;
    text-decoration: none;
    outline: none;
    border: 1px solid #fff;
}

#banklinks a:focus,
#banklinks a:hover { border-color: #555; }

#banklinkSeb { background: #99cc00	url('images/logo.seb.gif') no-repeat 50% 50%; }
#banklinkSwedbank { background: #fff	url('images/logo.swedbank.gif') no-repeat 50% 50%; }
#banklinkSnoras { background: #fff	url('images/logo.snoras.gif') no-repeat 50% 50%; }
#banklinkDanskeBankas { background: #fff	url('images/logo.danskebankas.gif') no-repeat 50% 50%; }
#banklinkDnBNORD { background: #fff	url('images/logo.dnbnord.gif') no-repeat 50% 50%; }
#banklinkNordea { background: #fff	url('images/logo.nordea.gif') no-repeat 50% 50%; }

#moketojas input, #moketojas select {
    float: left;
    clear: both;
}

#moketojas label.note {
    float: left;
    clear: both;
    margin: 3px 0 0 0;
    line-height: 1em;
    white-space: nowrap;
    top: 0;
}

#moketojas div.column { margin-bottom: 0.5em; }

input.readonly, textarea.readonly { color: #808080; }

.tooltip {
  position: relative;
  z-index: 0;
  margin: 2px 0 0 !important;
  line-height: 15px;
}

    .tooltip img{
        position:relative;
        cursor: help;
    }


* + html .tooltip img {
  margin: 1px 0 0 !important;
}

.tooltip span {
    float:left;
    display: none;
    position: absolute;
    z-index:9999;
    right: -205px;
    font-size: 11px;
    width: 190px;
    border: 1px solid #ccc;
    background: #eee;
    padding: 2px 5px;
    text-align: left;
}
