* {
    box-sizing: border-box;
    font-family: open-sans, serif;
    font-size: 12pt;
}

h1 {
    font-size: 15pt;
    font-weight: normal;
    color: #3085c9;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

h2 {
    font-size: 14pt;
    color: #636262;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

h3 {
    font-size: 12pt;
    font-weight: bold;
    color: #636262;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-bottom: 2px;
}

h4 {
    font-size: 16pt;
    font-weight: normal;
    color: #636262;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-bottom: 2px;
}

hr {
    border: 0;
    height: 1px;
    margin: 0;
    width: 100%;
    background-image: linear-gradient(to right, #d4d4d4, #fbfbfb);
}

p{
    margin-block-start: 0.2em;
}

p.tight{
    margin-block-start: 0.1em;
    margin-block-end: 0.1em;
}


a {
    text-decoration: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #3085c9;
    cursor: pointer;
}

ul.discrete {
    padding-left: 20px;
    list-style: none;
    margin: 0;
}
ul.discrete li::before {
    content: "\2022";
    color: #636262;
    font-weight: bold;
    display: inline-block;
    width: 1em;
    margin-left: -1em;
}
ol.discrete {
    padding-left: 20px;
    list-style: none;
}
ol.discrete li::before {
    content: "\2022";
    color: #636262;
    font-weight: bold;
    display: inline-block;
    width: 1em;
    margin-left: -1em;
}

.no-select {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/*****************************************************
 *                    logos                        *
 *****************************************************/
.company-logo {
    position: relative;
    float: left;
    width: 200px;
    height: 50px;
    left: 0;
    top: 0;
    cursor: pointer;

    background-origin: content-box;
    background-size: contain;
    background-repeat: no-repeat;
}

.company-slogan {
    position: absolute;
    float: left;
    width: 140px;
    height: 80px;
    left: 115px;
    top: 22px;
    cursor: pointer;

    background-origin: content-box;
    background-size: contain;
    background-repeat: no-repeat;
}

div.provider-logo {
    position: absolute;
    bottom: 10px;
    width: 54px;
    height: 54px;

    background-origin: content-box;
    background-size: contain;
    background-repeat: no-repeat;

    opacity: 0.8;
    float: left;
}

div.contact-logo {
    background-origin: content-box;
    background-size: contain;
    background-repeat: no-repeat;

    opacity: 0.8;
    width: 16px;
    height: 16px;
    margin-right: 8px;
    display: inline-block;
}

div.icon {
    width: 30px;
    height: 30px;

    background-origin: content-box;
    background-size: contain;
    background-repeat: no-repeat;
}

/*****************************************************
 *                    banners                        *
 *****************************************************/
img.banner-placeholder {
    width: 100%;
}

div.banner-container {
    display: block;
}

div.banner {
    position: absolute;
    width: 100%;
    height: auto;
    padding: 20px;
    top: 0;
    left: 0;
    opacity: 0.9;
    display: block;

    background-origin: content-box;
    background-size: contain;
    background-repeat: no-repeat;
}

div.banner.transparent {
    opacity: 0;
}

p.tighter {

}

/*****************************************************
 *                  transitions                      *
 *****************************************************/
.transition {
    -webkit-transition: opacity 0.5s ease-in-out;
    -moz-transition: opacity 0.5s ease-in-out;
    -o-transition: opacity 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out;
}

/*****************************************************
 *                      rating                       *
 *****************************************************/
div.icon.rating-star {
    font-family: Arial, serif;
    display: inline-block;
    height: 16px;
    width: 16px;
    padding: 0;
    margin: 0;
    background-image: url("../img/icon/icon-rating-unchecked.png");
}
div.icon.rating-star.input {
    height: 20px;
    width: 20px;
    cursor: pointer;
}

div.icon.rating-star.checked,
div.icon.rating-star.selected {
    background-image: url("../img/icon/icon-rating-checked.png");
}

div.icon.rating-star.unchecked,
div.icon.rating-star.selected.unchecked {
    background-image: url("../img/icon/icon-rating-unchecked.png");
}

/*****************************************************
 *                   message box                     *
 *****************************************************/
.message-container{
    margin-top: 20px;
    max-width: 600px;
    height: 0;
    overflow-y: hidden;
    transition: 0.5s;
}

.message-container.unfolded{
    height: auto;
}

.message-box{
    border: solid #c1c1c1 1px;
    padding: 16px;
}

.message-box.error{
    color: #a33021;
    font-size: 10pt;
    border: solid #f9ab98 1px;
    background: #ffe0d7 /*url("../img/icon/icon-warning.png") no-repeat 12px 12px*/;
    /*background-size: 32px 32px;*/
    opacity: 0.8;
}

.message-box.confirmation{
    color: #4e6d36;
    font-size: 10pt;
    border: solid #99bd5b 1px;
    background: rgba(209, 236, 132, 0.32) /*url("../img/icon/icon-confirmation.png") no-repeat 12px 12px*/;
    /*background-size: 32px 32px;*/
    opacity: 0.8;
}


/*****************************************************
 *                   message box                     *
 *****************************************************/
.underlined{
    text-decoration: underline;
}

.smaller {
    font-size: 11.5pt;
}

.small {
    font-size: 9pt;
}

.smallest {
    font-size: 9pt;
}

.bold {
    font-weight: bold;
}

.italic {
    font-style: italic;
}

.larger {
    font-size: 11pt;
}

.large {
    font-size: 16pt;
}

.grey {
    color: #848484;
}

.right {
    text-align: right;
}

.pointer {
    cursor: pointer
}

.tight {
    margin-bottom: 0;
}

.blue {
    color: #3085c9;
}

.nowrap {
    white-space: nowrap;
}

.normal {
    font-weight: normal;!important;
}









