*
{
	margin: 0;
  padding: 0;

  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;

  text-rendering: geometricPrecision;

  -webkit-font-smoothing: antialiased;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility:hidden;

	/*text-shadow: 1px 1px 1px rgba(0,0,0,0.05);*/
}

/*body
{
	background-color: #f7f9fa;
	color: #4b646f;
	font-size: 14px;
}*/

html
{
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

html, body
{
  height: 100%;
}

@media screen and (-webkit-min-device-pixel-ratio: 2)
{
  body
  {
    -webkit-font-smoothing: subpixel-antialiased;
  }
}

a:active, a:hover
{
  outline: 0;
}

h1, h2, h3, h4, h5, h6
{
	display: block;
	/*color: #444;*/
}

/* Clearer */
.clearfix
{
	/*zoom: 1;*/ /* ie 6/7 */
	clear: both;
}

.clearfix:after
{
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.clearfix:before,
.clearfix:after
{
	content: " ";
	display: table;
}

.clearfix:after
{
	clear: both;
}

/* Bootstrap-like framework */
.row
{
	/*zoom: 1;*/ /* ie 6/7 */
	clear: both;

  width: 100%;

	display: -webkit-flex;
	-webkit-flex-wrap: wrap;
	display: flex;
	flex-wrap: wrap;

  /*align-items: flex-end;*/
}

.row:after
{
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.row:before,
.row:after
{
	content: " ";
	display: table;
}

.row:after
{
	clear: both;
}

.row > div[class^='col-'],
.row > div[class*=' col-']
{
	display: inline-block;
  float: left;
}

/* Extra small devices (phones, less than 768px) */
@media (max-width: 768px)
{
	.col-xs-1 { width: calc(100% / 12 * 1) }
	.col-xs-2 { width: calc(100% / 12 * 2) }
	.col-xs-3 { width: calc(100% / 12 * 3) }
	.col-xs-4 { width: calc(100% / 12 * 4) }
	.col-xs-5 { width: calc(100% / 12 * 5) }
	.col-xs-6 { width: calc(100% / 12 * 6) }
	.col-xs-7 { width: calc(100% / 12 * 7) }
	.col-xs-8 { width: calc(100% / 12 * 8) }
	.col-xs-9 { width: calc(100% / 12 * 9) }
	.col-xs-10 { width: calc(100% / 12 * 10) }
	.col-xs-11 { width: calc(100% / 12 * 11) }
	.col-xs-12 { width: calc(100% / 12 * 12) }

	.hidden-xs { display: none }
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px)
{
	.col-sm-1 { width: calc(100% / 12 * 1) }
	.col-sm-2 { width: calc(100% / 12 * 2) }
	.col-sm-3 { width: calc(100% / 12 * 3) }
	.col-sm-4 { width: calc(100% / 12 * 4) }
	.col-sm-5 { width: calc(100% / 12 * 5) }
	.col-sm-6 { width: calc(100% / 12 * 6) }
	.col-sm-7 { width: calc(100% / 12 * 7) }
	.col-sm-8 { width: calc(100% / 12 * 8) }
	.col-sm-9 { width: calc(100% / 12 * 9) }
	.col-sm-10 { width: calc(100% / 12 * 10) }
	.col-sm-11 { width: calc(100% / 12 * 11) }
	.col-sm-12 { width: calc(100% / 12 * 12) }

	.hidden-sm { display: none }
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px)
{
	.col-md-1 { width: calc(100% / 12 * 1) }
	.col-md-2 { width: calc(100% / 12 * 2) }
	.col-md-3 { width: calc(100% / 12 * 3) }
	.col-md-4 { width: calc(100% / 12 * 4) }
	.col-md-5 { width: calc(100% / 12 * 5) }
	.col-md-6 { width: calc(100% / 12 * 6) }
	.col-md-7 { width: calc(100% / 12 * 7) }
	.col-md-8 { width: calc(100% / 12 * 8) }
	.col-md-9 { width: calc(100% / 12 * 9) }
	.col-md-10 { width: calc(100% / 12 * 10) }
	.col-md-11 { width: calc(100% / 12 * 11) }
	.col-md-12 { width: calc(100% / 12 * 12) }

	.hidden-md { display: none }
}

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px)
{
	.col-lg-1 { width: calc(100% / 12 * 1) }
	.col-lg-2 { width: calc(100% / 12 * 2) }
	.col-lg-3 { width: calc(100% / 12 * 3) }
	.col-lg-4 { width: calc(100% / 12 * 4) }
	.col-lg-5 { width: calc(100% / 12 * 5) }
	.col-lg-6 { width: calc(100% / 12 * 6) }
	.col-lg-7 { width: calc(100% / 12 * 7) }
	.col-lg-8 { width: calc(100% / 12 * 8) }
	.col-lg-9 { width: calc(100% / 12 * 9) }
	.col-lg-10 { width: calc(100% / 12 * 10) }
	.col-lg-11 { width: calc(100% / 12 * 11) }
	.col-lg-12 { width: calc(100% / 12 * 12) }

	.hidden-lg { display: none }
}

/* Font */
.font-bold        { font-weight: 500; }
.font-secondary
{
	color: #999;
	font-size: 13px;
	/*white-space: nowrap;*/
}

/* Text */
.text-highlight   { color: #2196f3; text-decoration: underline; }
.text-left        { text-align: left; }
.text-center      { text-align: center; }
.text-right       { text-align: right; }
.text-justify     { text-align: justify; }

/* Backgrounds */
.bg-white { background-color: #fff; }
