/**/

html {
width: 100%;
padding: 0;
margin: 0;
font-size: 100%;
line-height: 1.35; /* 1.4 */
-webkit-tap-highlight-color: transparent;
-webkit-text-size-adjust: 100%;
}

body {
width: 100%;
max-width: 100%;
box-sizing: border-box;
padding: 0;
margin: 0;
font-size: 1.25em;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}

a, span, p, div, h1, h2, h3, h4, h5, h6, b, strong, em, ul, ol, li {
box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6, p {
margin-top: 0;
}

hr {
height: 0;
border: 0;
background-color: initial;
border-color: initial;
border: 0;
border-top: 1px solid;
margin: 1.5em 0 1.5em 0;
}

img {
max-width: 100%;
height: auto;
border: 0px;
}

*:focus {
outline: none;
}

a {
color: inherit;
text-decoration: none;
border: 0px;
outline: none;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
}

a:link {
outline: none;
}

a:visited {
outline: none;
}

a:hover {
outline: none;
}

a[href^="tel"] {
text-decoration: none;
outline: none;
color: inherit;
}

a[href^="tel"]:hover {
text-decoration: none;
outline: none;
}

ul {
padding: 0 0 0 1em;
margin-top: 0;
box-sizing: border-box;
}

ol {
padding: 0 0 0 1em;
margin-top: 0;
box-sizing: border-box;
}

input, select, textarea {
width: 100%;
border-radius: 4px;
font-family: inherit;
font-size: initial;
}

input, select {
padding: 0.5em;
margin: 0;
box-sizing: border-box;
border: 1px solid #dddddd;
color: #181831;
outline: none;
}

select {
margin: 0;
box-sizing: border-box;
padding-right: 2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background-color: #ffffff;
background-image: url(../images/select-arrow-right.svg);
background-repeat: no-repeat;
background-size: auto 8px;
background-position: right 10px center;
cursor: pointer;
}

select option {
padding: 10px;
border: 0;
outline: 0;
}

select::-ms-expand {
display: none;
}

select:-moz-focusring {
border: 0;
outline: 0;
color: transparent;
text-shadow: 0 0 0 #000;
}

select:-moz-focus-inner {
border: 0;
outline: 0;
}

input[type="text"], 
input[type="password"]  {
box-sizing: border-box;
margin: 0;
-webkit-appearance: none;
}

input[type="file"] {
font-size: inherit;
}

input[type="reset"] {
width: auto;
min-width: 100px;
}

input[type="submit"] {
width: auto;
min-width: 100px;
box-sizing: border-box;
margin: 0;
-webkit-appearance: none;
}

#portallogin input[type="submit"] {
width: 100%;
}

input[type="checkbox"] {
float: left;
width: 20px;
height: 20px;
box-sizing: border-box;
border: 0;
border-radius: 0;
padding: 5px;
margin: 0 10px 0 0;
}

textarea {
float: left;
width: 100%;
height: 200px;
box-sizing: border-box;
border: 1px solid #dddddd;
border-radius: 0;
padding: 10px;
margin: 0;
color: #000000;
-webkit-appearance: none;
resize: none;
}

.checkboxStyle {
display: inline-block;
width: 20px;
height: 20px;
margin: 0 10px 5px 0;
border: 1px solid #dddddd;
background-color: #ffffff;
vertical-align: middle;
overflow: hidden;
position: relative;
}

.checkboxStyle label {
cursor: pointer;
position: absolute;
width: 20px;
height: 20px;
top: 0px;
left: 0px;
background: transparent none repeat scroll 0% 0%;
border: 0;
}

.checkboxStyle label::after {
opacity: 0;
content: '';
position: absolute;
width: 9px;
height: 5px;
background: transparent none repeat scroll 0% 0%;
top: 3px;
left: 4px;
border-width: medium medium 2px 2px;
border-style: none none solid solid;
border-color: -moz-use-text-color -moz-use-text-color #dddddd #dddddd;
-moz-border-top-colors: none;
-moz-border-right-colors: none;
-moz-border-bottom-colors: none;
-moz-border-left-colors: none;
border-image: none;
-moz-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}

.checkboxStyle input[type="checkbox"] {
width: 20px;
height: 20px;
visibility: hidden;
}

.checkboxStyle input[type="checkbox"]:checked + label::after {
opacity: 1;
}

video {
display: block;
width: 100%;
max-width: 100%;
}

.autoHyphens {
word-wrap: break-word;
-webkit-hyphens: auto;
   -moz-hyphens: auto;
    -ms-hyphens: auto;
        hyphens: auto;
}

.noHyphens {
white-space: nowrap;
-webkit-hyphens: none !important;
   -moz-hyphens: none !important;
    -ms-hyphens: none !important;
        hyphens: none !important;
}

.hide-native-scrollbar {
scrollbar-width: none; /* Firefox 64 */
-ms-overflow-style: none; /* Internet Explorer 11 */
}

.hide-native-scrollbar::-webkit-scrollbar { /** WebKit */
display: none;
}

/* ------------- over all ------------ */

.overAllWrapper {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: rgba(255,255,255,0.8);
z-index: 10000;
text-align: center;
overflow-y: auto;
-webkit-overflow-scrolling: touch;
}

.overAllWrapper-darker {
background: rgba(0,0,0,0.75);
}

/* ------------- loading ani ------------ */
.overAllWrapperLoading {
background: rgba(0,0,0,0.75);
}

.loader {
margin: -2em 0 0 -2em;
font-size: 1em;
position: fixed;
top: 50%;
left: 50%;
text-indent: -9999em;
border-top: 0.75em solid rgba(0,0,0,0.5);
border-right: 0.75em solid rgba(0,0,0,0.5);
border-bottom: 0.75em solid rgba(0,0,0,0.75);
border-left: 0.75em solid rgba(0,0,0,1);
-webkit-transform: translateZ(0);
-moz-transform:    translateZ(0);
-ms-transform:     translateZ(0);
-o-transform:      translateZ(0);
transform:         translateZ(0);
-webkit-animation: load8 1s infinite linear;
animation: load8 1s infinite linear;
}

.loader, .loader:after {
border-radius: 50%;
width: 4em;
height: 4em;
}

@-webkit-keyframes load8 {
0% {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
100% {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}
}

@keyframes load8 {
0% {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
100% {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}
}

.nouserSelect {
-moz-user-select: none;
-khtml-user-select: none;
-webkit-user-select: none;
user-select: none;
/* desable saving */
-webkit-touch-callout: none;
}

.noscriptStyle {
position: fixed;
top: 0;
left: 0;
z-index: 20001;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
box-sizing: border-box;
border: 0;
padding: 1em;
margin: 0 auto;
font-size: 1em;
background-color: rgba(232,0,47,0.8);/*red opaque*/
color: #ffffff;
text-align: center;
}

.noscriptStyle a {
display: block;
}

/* IE9 < */
.getNewerbrowser {
display: none;
position: fixed;
left: 0;
bottom: 0;
z-index: 20002;
width: 100%;
box-sizing: border-box;
border: 0;
padding: 0.6em 2em 0.6em 2em;
margin: 0;
text-align: center;
background-color: #e8002f;/*red*/
color: #ffffff;
font-size: 0.9em;
}

.getNewerbrowser a {
color: #ffffff;
}

