html {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
*, *:before, *:after {
  -moz-box-sizing: inherit;
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}
/*
*:focus {
  outline: 1px dotted;
  }  
  */
html {
  overflow-x: hidden;
  overflow-y: scroll;
  font-size: 1em; /* to use rem */
  }
body {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  /* Non standard for webkit, breaks Safari 7 tables
  word-break: break-word; */
  /* -ms-word-break: break-all;
  word-break: break-all; */
 
  /*  onum: old style numbers, lnum: line, tnum: tabular
      liga: ligatures (FF default, IE/C not), dlig: discretionary ligatures 
  -webkit-font-feature-settings: 'liga', 'onum';
  -moz-font-feature-settings: 'liga', 'onum';*/
  /* IE10/Win7 fail! font-feature-settings: 'liga', 'onum'; */
  }
h1, h2, h3, h4, h5, h6, p, pre, blockquote, ul, ol, li, dl, dd, fieldset, hr {
  margin: 0;
  }
pre {
  white-space: pre-wrap;
  word-wrap: break-word;
  }
tr {
  vertical-align: top;
  }
caption, th {
  text-align: left;
  }
textarea {
  resize: vertical;
  }
a, button, input[type=submit] {
  text-decoration: none;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  }
img, video, object {
  max-width: 100%;
  width: auto;
  height: auto;
  }
img[src$='.svg'] {
  max-width: none;
  width: 100%;
  }

iframe {
  width: 100%;
  }

.clearfix:after {
  clear: both;
  content: "";
  display: table;
  }

@media (max-width: 767px) {
  /* IE10/11 */
  @-ms-viewport {
    width: device-width;
    }
  @viewport {
    width: device-width;
    }
}