@
-viewport {
    width: device-width;
}

@
viewport {
    width: device-width;
}

@
-ms-viewport {
    width: device-width;
}

html,body {
    background: #f1f0f0;
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    margin: auto;
    padding: 15px 15px 15px 15px;
}

.visible-xxs {
  display: none !important;
}

@media (max-width: 430px) {
  .visible-xxs {
    display: block !important;
  }
  table.visible-xxs {
    display: table;
  }
  tr.visible-xxs {
    display: table-row !important;
  }
  th.visible-xxs,
  td.visible-xxs {
    display: table-cell !important;
  }

}
@media (max-width: 430px) {
  .hidden-xxs {
    display: none !important;
  }
}

#footer {
    /*position: absolute;*/
    /*bottom: 10px;*/
    margin: 0 auto;
    width: 100%;
}

.pageWrapper {
    min-height: 100%;
    position: relative;
    max-width: 720px;
    margin: 0 auto;
}

.contentWrapper {
    padding-bottom: 42px;
}

.headerWrapper {
    position: relative;
    height: 80px;
    margin-bottom: 20px;
}

.headerLogo {
    position: absolute;
    bottom: 0;
    float: left;
}

.headerInfo {
    float: right;
    padding-top: 38px;
}

.headerInfo .fa {
    float: right;
    color: #225799;
}

.headerInfoContent {
    color: #285b9b;
    font-weight: bold;
    text-align: right;
    font-size: 1.2em;
    float: right;
}

.headerInfoContent .subInfo {
    font-size: 0.7em;
    font-weight: normal;
    display: block;
}

@media (max-width : 640px) {
    .headerInfo {
        padding-top: 30px;
    }
    .headerInfoImage {
        padding-top: 5px;
    }
}

a {
    color: #215799;
}

.clearfix:after {
    content: '';
    clear: both;
}

ul.steps {
    margin: 10px; auto;
    padding: 0;
}

ul.steps li {
    list-style: none;
    float: left;
    padding: 0;
    margin: 0;
    height: 70px;
    width: 20%;
    max-width: 130px;
    min-width: 70px;
    text-align: center;
}

ul.steps li .number {
    background: url("../../images/wizard/steps_bg.png");
    background-position: center 205px;
    display: block;
    height: 41px;
    line-height: 41px;
    vertical-align: middle;
    font-weight: bold;
    color: white;
}

ul.steps li a:hover {
    text-decoration: none;
}

ul.steps li.active .number {
    background-position: center 164px;
}

ul.steps li.preActive .number {
    background-position: center 123px;
}

ul.steps li.first.active .number {
    background-position: center 0px;
}

ul.steps li.first.preActive .number {
    background-position: center 246px;
}

ul.steps li.last .number {
    background-position: center 82px;
}

ul.steps li.last.active .number {
    background-position: center 41px;
}

ul.steps li .caption {
    color: #595959;
    font-weight: bold;
    font-size: 0.9em;
    marign-top: 7px;
}

ul.steps li.active .caption {
    color: #000000;
}

.contentBox {
    position: relative;
    border-radius: 5px 5px 5px 5px;
    background: #ffffff;
    width: 100%;
    margin-bottom: 10px;
    box-shadow: 3px 3px 3px 0px #cecece;
    padding: 15px;
    color: #999999;
}

.contentBox .contentBoxHeader {
    background: url("../../images/wizard/header_bg.png");
    border-bottom: 1px solid #404040;
    height: 30px;
    line-height: 30px;
    vertical-align: middle;
    margin: 0;
    padding: 0 0 0 10px;
    font-size: 1.1em;
    font-weight: bold;
    color: #ffffff;
}

.contentBox h2 {
    color: #215799;
    font-size: 1.5em;
    margin: 5px 0 15px 0;
}

.contentBox .description {
    font-style: italic;
}

.contentBox .contentBoxContent {
    padding: 10px;
}

.insuranceSelection .insuranceLogo {
    float: left;
    padding: 10px;
    width: 23.5294117647%;
}

.insuranceSelection .insuranceContent {
    margin-left: 25%;
}

.insuranceSelection .insuranceContentHeader h2 {
    margin: 0 0 3px 0;
    color: #333333;
    font-size: 1.7em;
}

@media ( max-width : 640px) {
    .insuranceSelection .insuranceContentHeader h2 {
        font-size: 1.4em;
    }
}

.insuranceSelection .insuranceContentDescription .insuranceOrderButton {
    margin-top: 10px;
}

.insuranceOrderButton .insuranceOrderButtonLabel {
    display: inline-block;
    background: url("../../images/wizard/btn_small_bg.png");
    border: 2px solid #ffffff;
    height: 29px;
    line-height: 26px;
    vertical-align: middle;
    border-radius: 15px;
    box-shadow: 1px 1px 2px 1px #a9a9a9;
    font-size: 0.8em;
    font-weight: bold;
    padding: 0 15px 0 15px;
    color: white;
}

.insuranceOrderButton a {
    text-decoration: none;
}

.insuranceOrderButton .insuranceOrderButtonLabel:hover {
    background-position: 0 -29px;
}

.insuranceOrderButton .insuranceOrderButtonFlag {
    display: inline-block;
    height: 20px;
    line-height: 20px;
    vertical-align: middle;
    font-size: 0.7em;
    box-shadow: 1px 1px 2px 1px #7c7c7c;
    background: white;
    padding: 0 25px 0 10px;
    margin-right: -15px;
    font-weight: bold;
    color: #666666;
}

@media ( max-width : 640px) {
    .insuranceOrderButton .insuranceOrderButtonLabel {
        height: 26px;
        line-height: 22px;
        font-size: 0.7em;
        padding: 0 10px 0 10px;
    }
    .insuranceOrderButton .insuranceOrderButtonFlag {
        height: 16px;
        line-height: 16px;
        font-size: 0.6em;
        padding: 0 20px 0 5px;
    }
}

.insuranceSelection .insuranceContentHeader {
    border-bottom: 1px solid #e9e7e7;
    margin-bottom: 5px;
}

.insuranceSelection .insuranceContentDescription {
    color: #999999;
    font-size: 0.9em;
}

.insuranceSelection .insuranceContentDescription h4 {
    font-size: 1em;
    font-weight: bold;
    margin: 5px 0 2px 0;
}

.insuranceSelection .insuranceContentDescription ul li {
    list-style-type: disc;
    list-style-image: url("../../images/wizard/list_bullet.png");
}

.insuranceSelection .insuranceContentDescription ul {
    margin: 0;
    padding-left: 18px;
}

.stepsWrapper {
    padding: 0;
}

@media ( max-width : 640px) {
    /* Hide steps on small screens */
    .stepsWrapper .contentBoxContent {
        display: none;
    }
    body {
        font-size: 1.7em;
    }
}

@media ( max-width : 770px) {
    .form-group {
        margin-bottom: 0;
    }
}

.document_preview {
    width: 150px;
}

.error {
    background-color: red;
    color: white;
}

.documentsBox {
    padding: 10px;
}

.formSection {
    padding-bottom: 10px;
}

.formRow {
    clear: left;
    padding: 0 0 10px 0;
}

.formRow.leftAlignLabel label {
    margin-left: 30px;
}

.formRow.leftAlignLabel .checkboxWrapper {
    margin-left: -30px;
}

.formLabel {
    float: left;
    padding: 0 5px 0 5px;
    width: 25%;
    color: #999999;
}

.formRow label {
    font-weight: normal;
    color: #999999;
}

.formRow label a {
    color: #999999;
    text-decoration: underline;
}

.formRow label a:hover {
    color: #215799;
}

.formField {
    display: inline-block;
    width: 80%;
}

.formRow input[type="checkbox"] {
    padding: 2px;
}

.formRow .formFieldAppendix {
    display: inline-block;
    padding: 2px 10px;
}

.cardValidationFormRow .formField {
    width: 312px;
}

.tooltipFormRow .formFieldAppendix {
    display: inline-block;
    padding: 2px 23px;
    float: right;
}

.cardValidationFormRow .formFieldAppendix {
    display: inline-block;
    padding: 0px 37px 0px 0px;
    float: right;
}

@media ( max-width : 640px) {
    .formField {
        width: 100%;
    }
    .tooltipFormRow .formFieldAppendix {
        width: 10%;
    }
    .tooltipFormRow .formField {
        width: 85%;
    }
    .cardValidationFormRow .formFieldAppendix {
        width: 40%;
    }
    .cardValidationFormRow .formField {
        width: 60%;
    }
}

@media ( max-width : 430px) {
    .tooltipFormRow .formFieldAppendix {
        padding: 2px 8px;
    }
}

.personalInfoBox {
    padding: 10px;
}

.form-group select {
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.428571429;
    color: #555;
    vertical-align: middle;
    background-color: white;
    border: 1px solid #CCC;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -webkit-transition: border-color ease-in-out 0.15s, box-shadow
        ease-in-out 0.15s;
    transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.form-group select[disabled] {
    background: #dddddd;
}

.btn-default.btn-gender {
    padding-left: 25px;
    background: #fafafa none;
    color: #818181;
}
.btn-gender.active {
    color: #222222;
}
.btn-gender .fa {
    padding-right: 5px;
}
.btn-gender .fa-male {
    color: #2844db;
}
.btn-gender .fa-female {
    color: #a50000;
}

.hidden {
    display: none;
}

.infoButton {
    display: inline-block;
    background: url("../../images/wizard/header_bg.png");
    border-radius: 14px;
    width: 28px;
    height: 28px;
    line-height: 28px;
    vertical-align: middle;
    font-size: 14px;
    font-weight: bold;
    color: #ffffff;
    text-align: center;
    cursor: default;
}

.infoButtonSmall {
    display: inline-block;
    background: url("../../images/wizard/header_bg.png");
    border-radius: 8px;
    width: 16px;
    height: 16px;
    line-height: 16px;
    vertical-align: middle;
    font-size: 10px;
    font-weight: bold;
    color: #ffffff;
    text-align: center;
    cursor: default;
}

.personalInfoBox .formRow {
    width: 75%;
}

@media ( max-width : 640px) {
    .insuranceSelection .insuranceContentHeader .insuranceOrderButton {
        right: 10px;
    }
}

@media ( max-width : 400px) {
    .insuranceSelection .insuranceContentHeader h2 {
        font-size: 1.2em;
    }
}

@media ( max-width : 370px) {
    .insuranceSelection .insuranceContentHeader h2 {
        letter-spacing: -2px;
    }
}

@media ( max-width : 350px) {
    .insuranceSelection .insuranceContentHeader h2 {
        letter-spacing: normal;
        margin-top: 20px;
    }
}

.btn-back {
    float: left;
}

.btn-next {
    float: right;
}

.formControl .btn {
    min-width: 200px;
}

.contentBox h3 {
    margin: 0 0 10px 0;
    font-size: 1.2em;
    color: #80d0d0;
}

.priceOverview {
    width: 100%;
    color: #999999;
}

.priceOverview .price {
    text-align: right;
}

.priceOverview .totalPrice {
    border-top: 1px solid #aaaaaa;
    text-align: right;
    color: #aaaaaa;
    font-weight: bold;
    padding-top: 10px
}

.webSignature {
    text-align: center;
    font-size: 11px;
    opacity: 0.3;
}

.webSignature:hover {
    -webkit-transition: .3s linear;
    transition: .3s linear;
    opacity: 0.6;
}

.webSignature * {
    color: black; /* Pro tmavou stránku je možné přehodit na 'white' */
    text-decoration: none;
}

.webSignature a:hover {
    text-decoration: underline;
}

.insuranceFields {
    margin-top: 20px;
}

.insuranceOptions {
    margin-top: 20px;
}

.additionalProductDetailsWrapper {
    margin-left: 20px;
}

.formErrors {
    color: #B94A48;
    margin: 0;
    /*-webkit-margin-before: 0;
    -webkit-padding-start: 0;*/
    padding: 0;
}

.insuranceInfoLink {
    padding-top: 5px;
}

.uploadImageButton {
    position: absolute;
    top: 0;
    left: 50%;
    color: #999;
    z-index: 1000;
    width: 170px;
    margin-left: -85px;
    text-align: center;
    height: 100%;
    padding-top: 66px;
    vertical-align: middle;
    font-size: 1.8em;
    font-weight: bold;
    cursor: pointer;
}

.dateSelects select {
    margin-right: 5px;
}

.btn-default {
    background-color: #225799;
    background-image: url("../../images/wizard/btn_bg.png");
    font-weight: bold;
    color: #ffffff;
    font-size: 0.9em;
    padding: 7px 22px;
}

#uploaImageButton {
    width: 100%;
    margin-top: 10px;
}

.requiredMark {
    color: red;
}

label {
    font-weight: normal;
}

@media ( max-width : 640px) {
    .inline-hidden-sm {
        display: none;
    }
    #changeValuesBtn {
        width: 100%;
        margin-top: 10px;
    }
    .boxLogo {
        display: none;
    }
}

@media ( max-width : 430px) {
    .formControl .btn,
    #nextButtonDisabled {
        width: 100%;
    }
}

#adressBox {
    margin-top: 20px;
}

.boxLogo {
    position: absolute !important;
    top: 25px;
    right: 15px;
}

.highlightItem {
    position: relative;
    /* Elements with this class must have fixed WIDTH:HEIGHT */
}

.highlightItemOut,.highlightItemOver {
    position: absolute;
    width: 100%;
    height: 100%;
}

.highlightItem .highlightItemOver,.highlightItem:hover .highlightItemOut
    {
    opacity: 0;
    -webkit-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
}

.highlightItem:hover .highlightItemOver,.highlightItem .highlightItemOut
    {
    opacity: 1;
    -webkit-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
}

input[type=date] {
    display: -webkit-inline-flex;
}

input[type="checkbox"] {
    position: relative;
    height: 27px;
    width: 24px;
    padding: 0;
    margin: 0;
    display: inline-block;
    opacity: 0;
}

input[type="radio"] {
    position: relative;
    height: 27px;
    width: 24px;
    padding: 0;
    margin: 0;
    display: inline-block;
    opacity: 0;
}

.checkboxWrapper {
    position: relative;
    background: url('../../images/wizard/checkboxes.png') 0
        3px no-repeat;
    padding: 0 !important;
    display: inline-block;
    height: 27px;
    width: 24px;
    margin: 0 4px -2px 0;
    vertical-align: bottom;
}

.radioWrapper {
    position: relative;
    background: url('../../images/wizard/radiobuttons.png')
        0 0px no-repeat;
    padding: 0 !important;
    display: inline-block;
    height: 24px;
    width: 24px;
    margin: 0 4px -2px 0;
    vertical-align: bottom;
}

.checkboxWrapper.checked {
    background-position: 0 -27px !important;
}

.radioWrapper.checked {
    background-position: 0 -24px !important;
}

.tooltip.in {
    opacity: 1;
}

.tooltip-inner {
    opacity: 1;
    background-color: #d0e0f4;
    color: #666666;
    font-size: 14px;
    box-shadow: 3px 3px 3px 0px #cecece;
    padding: 10px 10px 10px 10px;
    margin-bottom: 15px;
    max-width: 500px;
    white-space:pre-wrap;
}

.tooltip-arrow {
    border-left: 20px solid transparent !important;
    border-right: 20px solid transparent !important;
    border-top: 20px solid #d0e0f4 !important;
    margin-left: -20px !important;
}

.insuranceDocuments {
    margin-top: 25px;
}

.insuranceDocuments h5 {
    color: #215799;
}

.tourPriceWrapper {
    margin: 0 0 10px 20px;
}

.tourPriceWrapper label {
    text-align: right;
    padding-top: 7px;
}

.documents .pdf {
    background: url("../../images/wizard/pdf.gif");
    background-repeat: no-repeat;
    padding-left: 25px;
    display: block;
    color: #999999;
}

.reviewBoxLogo {
    top: 20px;
}

.finalPrice {
    font-size: 1.4em;
    color: #215799;
}

span.reviewLabel {
    font-weight: bold;
    color: #999999;
}

.reviewLeftColumn {
    float: left;
    max-width: 50%;
}

.reviewRightColumn {
    text-align: right;
    float: right;
}

.reviewRow > div {
    padding-bottom: 10px;
}

.insuranceValiditySelection label {
    width: 40%;
    float: left;
    margin-top: 10px;
}

.insuranceValiditySelection .input-group {
    width: 60%;
    float: right;
}

#personPriceWrapper {
    font-size: 1.2em;
    font-weight: bold;
    color: #215799;
}

#personPriceWrapper div {
    border-top: 1px solid #999999;
    padding-top: 5px;
}

.imageRow {
    padding-left: 2em;
}

.imageRow img {
    margin-right: 1em;
    margin-bottom: 10px;
}

/* Insured persons wizard */

.insuredPersonAlreadyAbroadLabel {
    margin-right: 15px;
}

/* Pricing table */

.smart-pricing,
.smart-pricing .pricing-button,
.smart-pricing .ribbon-inner,
.smart-pricing .pricing-tables .pricing-header h1,
.smart-pricing .pricing-tables .pricing-header h2 {
    font-family: inherit;
}

.smart-pricing .elegant-style .selected .colm-list,
.smart-pricing .elegant-style .selected .featured-package {
    -webkit-box-shadow:rgba(0, 0, 0, 0.25) 0 0 9px 0;
    -moz-box-shadow: rgba(0, 0, 0, 0.25) 0 0 9px 0;
    -o-box-shadow: rgba(0, 0, 0, 0.25) 0 0 9px 0;
    box-shadow: rgba(0, 0, 0, 0.25) 0 0 9px 0;
    box-shadow: rgba(0,0,0,0.25) 0 0 12px 0 \0/IE9;
    margin: -20px 0 0 0;
    position:relative;
    z-index:99;
    top:0;
}

.smart-pricing .fa-check {
    color: #225799;
}

.smart-pricing .elegant-style .selected .colm-list .pricing-footer {
    padding:25px 20px;
}

.smart-wrapper {
    padding: 20px 10px;
}

@media (max-width: 768px) {
    .smart-pricing .elegant-style .selected .colm-list {
        -webkit-box-shadow:none;
        -moz-box-shadow:none;
        -o-box-shadow:none;
        box-shadow:none;
        z-index:1;
    }
    .smart-pricing .elegant-style .selected .colm-list .pricing-footer { padding:20px; }
    .smart-pricing .elegant-style .selected .colm-list .pricing-header h2 span { font-size:46px; }
    .smart-pricing .elegant-style .selected .colm-list {
        margin:0 0 0 0;
        position:relative;
        top:0;
    }
}

/* jQuery Spinner Widget */

.ui-spinner input {
    margin: inherit;
    font-family: inherit;
    font-size: inherit;
}

.ui-spinner-input {
    padding: 6px 25px 6px 12px;
    border: 1px solid #cccccc;
}

.ui-spinner {
    border: none;
}

.ui-spinner-button {
    width: 22px;
}

.ui-spinner-down {
    bottom: 4px;
}

.ui-spinner-up {
    top: 4px;
}

/* Notification boxes */

.notification {
    position: relative;
    margin: 5px 0 15px 0;
    padding: 8px;
    border: 1px solid;
    background-position: 10px 11px !important;
    background-repeat: no-repeat !important;
    font-size: 13px;
    width: 99.8%;
    border-radius: 5px 5px 5px 5px;
    box-shadow: 3px 3px 3px 0px #cecece;
}

.attention {
    background: #fffbcc url('../../images/admin/icons/exclamation.png') 10px 11px no-repeat;
    border-color: #e6db55;
    color: #666452;
}

.attention div{
    padding-top: 3px;
}

.notification .fa {
    font-size: 125%;
    padding-left: 5px;
    vertical-align: middle;
    position: absolute;
    top: 33%;
}

.notification div {
    padding-left: 30px;
}

.notification-info {
    background: #dbe3ff;
    border-color: #a2b4ee;
    color: #585b66;
}

.notification-info .fa {
    color: #225799;
}

/* Language select */
.languageSelect {
    display: block;
    padding-bottom: 10px;
}

.languageSelect > span {
    color: #8f8f8f;
}

.languageSelect > div {
    display: inline;
}

/* Basic insurance information input */

.insuranceBasicParameters label {
    padding-top: 7px;
    margin-top: 0;
    margin-bottom: 0;
}

.insuranceBasicParameters .formErrors {
    margin-top: 10px;
}

@media (min-width: 768px) {
    .insuranceBasicParameters .birthDateWrapper,
    .insuranceBasicParameters .studentDiscountWrapper {
        padding-left: 4px;
    }
}

.birthDateWrapper select {
    margin-right: 5px;
}

/* Review page 'where next' links */

.whereNext .isic {
    margin: 10px auto;
    background: url('../../images/wizard/logo_isic_hover_grey.png');
    display: block;
    width: 161px;
    height: 64px;
}
.whereNext .isic:hover {
    background: url('../../images/wizard/logo_isic_hover.png');
}

.whereNext .alive {
    margin: 10px auto;
    background: url('../../images/wizard/logo_alive_hover.png');
    display: block;
    width: 185px;
    height: 64px;
}
.whereNext .alive:hover {
    background-position: 0 -64px;
}

.whereNext .uniqa {
    margin: 10px auto;
    background: url('../../images/wizard/logo_uniqa_hover.png');
    display: block;
    width: 244px;
    height: 50px;
}

.whereNext .uniqa:hover {
    background-position: 0 -50px;
}

#tariffJsonWrapper {
    display: none;
}

#companyHeadquarters p{
    text-align: center;
    color: #999999;
    font-size: 13px;
}

.formControl.clearfix.indent {
    padding: 10px;
}

.right-padding-small {
    padding-right: 5px;
}

#gather-data-confirmation-text {
    margin-left: -60px;
    width: 650px;
}

.comgate-container{
    display: flex;
    text-align: center;
    flex-direction: column;
    align-items: center;
}

.comgate-container img{
    height: 30px;
}

.comgate-text{
    opacity: 0.5;
    font-size: 12px;
    width: 70%;
}

.accessibility-text{
    font-size: 12px;
    width: 70%;
}

.comgate-logos{
    padding-bottom: 5px;
    width: 45%;
    display: flex;
    justify-content: space-evenly;
}

@media (max-width: 640px){
    .comgate-text{
        width: 100%;
    }
    .comgate-logos{
        width: 70%;
    }
    .accessibility-text{
        width: 100%;
    }
}

@media (max-width: 400px){
    .comgate-logos{
        width: 100%;
    }
}


