/*==========================================*/
/*             Normalize
/*==========================================*/

*, *:after, *:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

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

body {
    width       : 100%; 
    margin      : 0;
    padding     : 0;
    font        : inherit;
}

ol, ul {
    list-style  : none;
    margin      : 0;
    padding     : 0;
}

a {
    background      : transparent;
    text-decoration : none;
}

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

img {
    border    : 0;
}

button {
    -webkit-border-radius:0;
    border-radius:0;
}


input {
    -webkit-border-radius:0;
    border-radius:0;
}

p {
    margin: 0;
    padding: 0;
}

.cf:before, 
.cf:after {
    display: block;
    clear: both;
    content: " ";
}

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

.cf:after {
    clear: both;
}

.clearfix  {
    clear: both;
}

/*==========================================*/
/*             HTML5 DEFINITION
/*==========================================*/


article, aside, details,  footer, header, nav, section, summary {
    display : block;
}

audio, canvas, video {
    display : inline-block;
}

audio:not([controls]) {
    display : none;
    height  : 0;
}

/*==========================================*/
/*             TYPOGRAPHY
/*==========================================*/

h1, h2, h3, h4 {
    font-family: inherit;
    font-size: inherit;
    margin: 0;
    padding: 0;
    line-height: 1.2;
}

h1 {
    font-size : 2em;
}

code, kbd, pre, samp {
    font-family : monospace, serif;
    font-size   : 1em;
}

pre {
    white-space : pre-wrap;
}

q {
    quotes    : "\201C" "\201D" "\2018" "\2019";
}

/*==========================================*/
/*             FORMS STYLE RESET
/*==========================================*/

fieldset {
    border  : 1px solid #c0c0c0;
    margin  : 0 2px;
    padding : 0.35em 0.625em 0.75em;
}

legend {
    border  : 0;
    padding : 0;
}

button, input, select, textarea {
    font-family : inherit;
    font-size     : 100%;
    margin        : 0;
    outline: none;
    resize: none;
    
}

button, select {
    text-transform  : none;
}

button::-moz-focus-inner,    input::-moz-focus-inner {
    border  : 0;
    padding : 0;
}

textarea {
    overflow        : auto;
    vertical-align  : top;
}

/*==========================================*/
/*             TABLES
/*==========================================*/

table {
    border-collapse : collapse;
    border-spacing  : 0;
}

/*==========================================*/
/*             Grid Styles
/*==========================================*/

[class*='grid'],
[class*='col-'],
[class*='mobile-'],
.grid:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;	
}

[class*='col-'] {
	float: left;
  	min-height: 1px;
	padding-right: 10px; /* column-space */
}

[class*='col-'] [class*='col-']:last-child {
	padding-right: 0;
}

.grid {
	width: 100%;
	max-width: 1200px;
	min-width: 748px; /* when using padded grid on ipad in portrait mode, width should be viewport-width - padding = (768 - 20) = 748. actually, it should be even smaller to allow for padding of grid containing element */
	margin: 0 auto;
	overflow: hidden;
}

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

.grid-pad {
	padding-top: 20px;
	padding-left: 20px; /* grid-space to left */
	padding-right: 20px; /* grid-space to right: (grid-space-left - column-space) e.g. 20px-20px=0 */
}

.push-right {
	float: right;
}

/* Content Columns */

.col-1-1 {
	width: 100%;
}
.col-2-3, .col-8-12 {
	width: 66.66%;
}

.col-1-2, .col-6-12 {
	width: 50%;
}

.col-1-3, .col-4-12 {
	width: 33.33%;
}

.col-1-4, .col-3-12 {
	width: 25%;
}

.col-1-5 {
	width: 20%;
}

.col-1-6, .col-2-12 {
	width: 16.667%;
}

.col-1-7 {
	width: 14.28%;
}

.col-1-8 {
	width: 12.5%;
}

.col-1-9 {
	width: 11.1%;
}

.col-1-10 {
	width: 10%;
}

.col-1-11 {
	width: 9.09%;
}

.col-1-12 {
	width: 8.33%
}

/* Layout Columns */

.col-11-12 {
	width: 91.66%
}

.col-10-12 {
	width: 83.333%;
}

.col-9-12 {
	width: 75%;
}

.col-5-12 {
	width: 41.66%;
}

.col-7-12 {
	width: 58.33%
}

/* Pushing blocks */

.push-2-3, .push-8-12 {
	margin-left: 66.66%;
}

.push-1-2, .push-6-12 {
	margin-left: 50%;
}

.push-1-3, .push-4-12 {
	margin-left: 33.33%;
}

.push-1-4, .push-3-12 {
	margin-left: 25%;
}

.push-1-5 {
	margin-left: 20%;
}

.push-1-6, .push-2-12 {
	margin-left: 16.667%;
}

.push-1-7 {
	margin-left: 14.28%;
}

.push-1-8 {
	margin-left: 12.5%;
}

.push-1-9 {
	margin-left: 11.1%;
}

.push-1-10 {
	margin-left: 10%;
}

.push-1-11 {
	margin-left: 9.09%;
}

.push-1-12 {
	margin-left: 8.33%
}

@media handheld, only screen and (max-width: 768px) {
	.grid {
		width: 100%;
		min-width: 0;
		margin-left: 0;
		margin-right: 0;
		padding-left: 20px; /* grid-space to left */
		padding-right: 20px; /* grid-space to right: (grid-space-left - column-space) e.g. 20px-10px=10px */
	}

	[class*='col-'] {
		width: auto;
		float: none;
		margin: 10px 0;
		padding-left: 0;
		padding-right: 10px; /* column-space */
	}

	[class*='col-'] [class*='col-'] {
		padding-right: 0;
	}

	/* Mobile Layout */

	[class*='mobile-col-'] {
		float: left;
		margin: 0 0 10px;
		padding-left: 0;
		padding-right: 10px; /* column-space */
		padding-bottom: 0;
	}

	.mobile-col-1-1 {
		width: 100%;
	}
	.mobile-col-2-3, .mobile-col-8-12 {
		width: 66.66%;
	}

	.mobile-col-1-2, .mobile-col-6-12 {
		width: 50%;
	}

	.mobile-col-1-3, .mobile-col-4-12 {
		width: 33.33%;
	}

	.mobile-col-1-4, .mobile-col-3-12 {
		width: 25%;
	}

	.mobile-col-1-5 {
		width: 20%;
	}

	.mobile-col-1-6, .mobile-col-2-12 {
		width: 16.667%;
	}

	.mobile-col-1-7 {
		width: 14.28%;
	}

	.mobile-col-1-8 {
		width: 12.5%;
	}

	.mobile-col-1-9 {
		width: 11.1%;
	}

	.mobile-col-1-10 {
		width: 10%;
	}

	.mobile-col-1-11 {
		width: 9.09%;
	}

	.mobile-col-1-12 {
		width: 8.33%
	}

	/* Layout Columns */

	.mobile-col-11-12 {
		width: 91.66%
	}

	.mobile-col-10-12 {
		width: 83.333%;
	}

	.mobile-col-9-12 {
		width: 75%;
	}

	.mobile-col-5-12 {
		width: 41.66%;
	}

	.mobile-col-7-12 {
		width: 58.33%
	}

	.hide-on-mobile {
		display: none !important;
		width: 0;
		height: 0;
	}
}

/*==========================================*/
/*       Service classes and helpers
/*==========================================*/

html, body {
  height: 100%;
  margin: 0;
}

body {
    font-size: 19px;
    font-family: 'Jura';
    color: #fff;
}

h1,h2,h3,h4,h5,h6 {
    font-weight: 100;
}

h1 {
    font-size: 30px;
}

h2 {
    font-size: 25px;
}

@font-face {
  font-family: 'Jura';
  src: url('../fonts/Jura.eot'); /* IE9 Compat Modes */
  src: url('../fonts/Jura.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/Jura.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/Jura.woff') format('woff'), /* Pretty Modern Browsers */
       url('../fonts/Jura.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('../fonts/Jura.svg#svgFontName') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'logo';
  src: url('../fonts/logo.eot'); /* IE9 Compat Modes */
  src: url('../fonts/logo.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/logo.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/logo.woff') format('woff'), /* Pretty Modern Browsers */
       url('../fonts/logo.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('../fonts/logo.svg#svgFontName') format('svg'); /* Legacy iOS */
}

.wrapper {
    min-height: 100%;
    margin-bottom: -100px;
}

.footer,
.push {
    height: 100px;
}

.pb-10 { padding-bottom: 10px; }

.block        { display: block; }
.inline-block { display: inline-block; }
.inline       { display: inline; }

.float-r { float: right; }
.float-l { float: left; }
.float-n { float: none; }

.center {  text-align: center; }
.left   {  text-align: left; }
.right  {  text-align: right; }

.half-width img { width: 50%; }

.cust-links > a {
    position: relative;
}

.cust-links a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 100%;
    border-bottom: 1px solid #fff; 
    transition: .4s;
}

.cust-links a:after {
    position: absolute;
    content: '';
    padding: 20px;
    top: -10px;
    right: 100%;
    opacity: 0;
    visibility: hidden;
    background: url(../img/hover.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    transform: rotate(90deg);
    transition: .4s;
}

.cust-links a:hover:before {
    width: 100%;
}

.cust-links a:hover:after {
    opacity: 1;
    transform: rotate(0);
    visibility: visible;
}

.category-heading {
    position: relative;
}

.category-heading:before {
    content: '';
    position: absolute;
    height: 60px;
    width: 60px;
    top: 5px;
    left: -30px;
    background: url(../img/hover.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
    