@charset "UTF-8";
/*!
* www.KNACSS.com V5.0.1 (24 mai 2016) @author: Alsacreations, Raphael Goetter
* Licence WTFPL http://www.wtfpl.net/
*/
/* ----------------------------- */
/* ==Table Of Content            */
/* ----------------------------- */
/* 1- Normalize (basic reset) */
/* 2- Base (basic styles) */
/* 3- Print (print quick reset) */
/* 4- Stylings (minor stylings) */
/* 5- Misc (skip links, hyphens) */
/* (6- WordPress reset (disabled by default)) */
/* 7- Global Layout (alignment, modules, positionning) */
/* 8- Grid Layout (grillade) */
/* 9- Tables (data tables consistency) */
/* 10- Forms (forms consistency) */
/* 11- Helpers (width and spacers helpers) */
/* 12- Responsive (Responsive Web Design helpers) */
/* ---------------------------------- */
/* ==Normalize (basic reset)          */
/* ---------------------------------- */
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
 html {
 	font-family: sans-serif;
 	/* 1 */
 	-ms-text-size-adjust: 100%;
 	/* 2 */
 	-webkit-text-size-adjust: 100%;
 	/* 2 */
 }

/**
 * Remove the margin in all browsers (opinionated).
 */
 body {
 	margin: 0;
 }

/* HTML5 display definitions
========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
 article,
 aside,
 details,
 figcaption,
 figure,
 footer,
 header,
 main,
 menu,
 nav,
 section,
 summary {
 	/* 1 */
 	display: block;
 }

/**
 * Add the correct display in IE 9-.
 */
 audio,
 canvas,
 progress,
 video {
 	display: inline-block;
 }

/**
 * Add the correct display in iOS 4-7.
 */
 audio:not([controls]) {
 	display: none;
 	height: 0;
 }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
 progress {
 	vertical-align: baseline;
 }

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
 template,
 [hidden] {
 	display: none;
 }

/* Links
========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
 a {
 	background-color: transparent;
 	/* 1 */
 	-webkit-text-decoration-skip: objects;
 	/* 2 */
 }

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
 a:active,
 a:hover {
 	outline-width: 0;
 }

/* Text-level semantics
========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
 abbr[title] {
 	border-bottom: none;
 	/* 1 */
 	text-decoration: underline;
 	/* 2 */
 	text-decoration: underline dotted;
 	/* 2 */
 }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
 b,
 strong {
 	font-weight: inherit;
 }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
 b,
 strong {
 	font-weight: bolder;
 }

/**
 * Add the correct font style in Android 4.3-.
 */
 dfn {
 	font-style: italic;
 }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
 h1 {
 	font-size: 2em;
 	margin: 0.67em 0;
 }

/**
 * Add the correct background and color in IE 9-.
 */
 mark {
 	background-color: #ff0;
 	color: #000;
 }

/**
 * Add the correct font size in all browsers.
 */
 small {
 	font-size: 80%;
 }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
 sub,
 sup {
 	font-size: 75%;
 	line-height: 0;
 	position: relative;
 	vertical-align: baseline;
 }

 sub {
 	bottom: -0.25em;
 }

 sup {
 	top: -0.5em;
 }

/* Embedded content
========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
 img {
 	border-style: none;
 }

/**
 * Hide the overflow in IE.
 */
 svg:not(:root) {
 	overflow: hidden;
 }

/* Grouping content
========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
 code,
 kbd,
 pre,
 samp {
 	font-family: monospace, monospace;
 	/* 1 */
 	font-size: 1em;
 	/* 2 */
 }

/**
 * Add the correct margin in IE 8.
 */
 figure {
 	margin: 1em 40px;
 }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
 hr {
 	box-sizing: content-box;
 	/* 1 */
 	height: 0;
 	/* 1 */
 	overflow: visible;
 	/* 2 */
 }

/* Forms
========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
 button,
 input,
 select,
 textarea {
 	font: inherit;
 	/* 1 */
 	margin: 0;
 	/* 2 */
 }

/**
 * Restore the font weight unset by the previous rule.
 */
 optgroup {
 	font-weight: bold;
 }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
 button,
 input {
 	/* 1 */
 	overflow: visible;
 }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
 button,
 select {
 	/* 1 */
 	text-transform: none;
 }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
 button,
 html [type="button"],
 [type="reset"],
 [type="submit"] {
 	-webkit-appearance: button;
 	/* 2 */
 }

/**
 * Remove the inner border and padding in Firefox.
 */
 button::-moz-focus-inner,
 [type="button"]::-moz-focus-inner,
 [type="reset"]::-moz-focus-inner,
 [type="submit"]::-moz-focus-inner {
 	border-style: none;
 	padding: 0;
 }

/**
 * Restore the focus styles unset by the previous rule.
 */
 button:-moz-focusring,
 [type="button"]:-moz-focusring,
 [type="reset"]:-moz-focusring,
 [type="submit"]:-moz-focusring {
 	outline: 0;
 }

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
 /*
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
*/
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
 legend {
 	box-sizing: border-box;
 	/* 1 */
 	color: inherit;
 	/* 2 */
 	display: table;
 	/* 1 */
 	max-width: 100%;
 	/* 1 */
 	padding: 0;
 	/* 3 */
 	white-space: normal;
 	/* 1 */
 }

/**
 * Remove the default vertical scrollbar in IE.
 */
 textarea {
 	overflow: auto;
 }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
 [type="checkbox"],
 [type="radio"] {
 	box-sizing: border-box;
 	/* 1 */
 	padding: 0;
 	/* 2 */
 }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
 [type="number"]::-webkit-inner-spin-button,
 [type="number"]::-webkit-outer-spin-button {
 	height: auto;
 }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
 [type="search"] {
 	-webkit-appearance: textfield;
 	/* 1 */
 	outline-offset: -2px;
 	/* 2 */
 }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */
 [type="search"]::-webkit-search-cancel-button,
 [type="search"]::-webkit-search-decoration {
 	-webkit-appearance: none;
 }

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
 ::-webkit-input-placeholder {
 	color: inherit;
 	opacity: 0.54;
 }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
 ::-webkit-file-upload-button {
 	-webkit-appearance: button;
 	/* 1 */
 	font: inherit;
 	/* 2 */
 }

 /* ----------------------------- */
 /* ==Base (basic styles)         */
 /* ----------------------------- */
 /* switching to border-box model for all elements */
 html {
 	box-sizing: border-box;
 }

 * {
 	box-sizing: inherit;
 }

/*
ul,
ol {
  padding-left: 2em;
}
*/

ul,
ol {
	padding: 0;
	list-style: none;
}

ul, li {
	
	padding   : 0;
	margin    : 0;
}

img {
	vertical-align: middle;
}

/* height auto only for non SVG images */
img:not([src$=".svg"]) {
	height: auto;
}

blockquote,
figure {
	margin-left: 0;
	margin-right: 0;
}

html {
	/* set base font-size to equiv "10px", which is adapted to rem unit */
	font-size: 62.5%;
	/* IE9-IE11 math fixing. See http://bit.ly/1g4X0bX */
	/* thanks to @guardian, @victorbritopro and @eQRoeil */
	font-size: calc(1em * 0.625);
}

body {
	font-size: 1.4rem;
	background-color: #fff;
	color: #000;
	font-family: sans-serif;
	line-height: 1.5;
}

a {
	color: #333;
}
a:hover, a:focus, a:active {
	color: #000;
}

/* font-sizing for content */
p,
.p-like,
ul,
ol,
dl,
blockquote,
pre,
td,
th,
label,
textarea,
caption,
details,
figure {
	margin-top: 0.75em;
	margin-bottom: 0;
	line-height: 1.5;
}

h1, .h1-like {
	font-size: 3.2rem;
	font-family: sans-serif;
}

h2, .h2-like {
	font-size: 2.8rem;
	font-family: sans-serif;
}

h3, .h3-like {
	font-size: 2.4rem;
}

h4, .h4-like {
	font-size: 2rem;
}

h5, .h5-like {
	font-size: 1.8rem;
}

h6, .h6-like {
	font-size: 1.6rem;
}

/* alternate font-sizing */
.smaller {
	font-size: 0.6em;
}

.small {
	font-size: 0.8em;
}

.big {
	font-size: 1.2em;
}

.bigger {
	font-size: 1.5em;
}

.biggest {
	font-size: 2em;
}

code,
pre,
samp,
kbd {
	/* IE fix */
	white-space: pre-line;
	white-space: pre-wrap;
	font-family: consolas, courier, monospace;
	line-height: normal;
}

em,
.italic,
address,
cite,
i,
var {
	font-style: italic;
}

/* avoid top margins on first content element */
p:first-child,
.p-like:first-child,
ul:first-child,
ol:first-child,
dl:first-child,
blockquote:first-child,
pre:first-child,
h1:first-child,
.h1-like:first-child,
h2:first-child,
.h2-like:first-child,
h3:first-child,
.h3-like:first-child,
h4:first-child,
.h4-like:first-child,
h5:first-child,
.h5-like:first-child,
h6:first-child,
.h6-like:first-child {
	margin-top: 0;
}

/* avoid margins on nested elements */
li p,
li .p-like,
li ul,
li ol {
	margin-top: 0;
	margin-bottom: 0;
}

/* max values */
img,
table,
td,
blockquote,
code,
pre,
textarea,
input,
video,
svg {
	max-width: 100%;
}

/* margin-bottom on tables */
table {
	margin-bottom: 2rem;
}

/* ----------------------------- */
/* ==Print (quick print reset)   */
/* ----------------------------- */
@media print {
	* {
		background: transparent !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}

	body {
		width: auto;
		margin: auto;
		font-family: serif;
		font-size: 12pt;
	}

	p,
	.p-like,
	h1,
	.h1-like,
	h2,
	.h2-like,
	h3,
	.h3-like,
	h4,
	.h4-like,
	h5,
	.h5-like,
	h6,
	.h6-like,
	blockquote,
	ul,
	ol {
		color: #000;
		margin: auto;
	}

	.print {
		display: block;
	}

	.no-print {
		display: none;
	}

	/* no orphans, no widows */
	p,
	.p-like,
	blockquote {
		orphans: 3;
		widows: 3;
	}

	/* no breaks inside these elements */
	blockquote,
	ul,
	ol {
		page-break-inside: avoid;
	}

  /* page break before main headers
  h1,
  .h1-like {
	page-break-before: always;
  }
  */
  /* no breaks after these elements */
  h1,
  .h1-like,
  h2,
  .h2-like,
  h3,
  .h3-like,
  caption {
  	page-break-after: avoid;
  }

  a {
  	color: #000;
  }

  /* displaying URLs
  a[href]::after {
	content: " (" attr(href) ")";
  }
  */
  a[href^="javascript:"]::after,
  a[href^="#"]::after {
  	content: "";
  }
}
/* ----------------------------- */
/* ==Stylings (minor stylings)   */
/* ----------------------------- */
/* styling elements */
code, kbd, mark {
	border-radius: 2px;
}

kbd {
	padding: 0 2px;
	border: 1px solid #999;
}

code {
	padding: 2px 4px;
	background: rgba(0, 0, 0, 0.04);
	color: #b11;
}

pre code {
	padding: 0;
	background: none;
	color: inherit;
	border-radius: 0;
}

mark {
	padding: 2px 4px;
}

sup,
sub {
	vertical-align: 0;
}

sup {
	bottom: 1ex;
}

sub {
	top: 0.5ex;
}

blockquote {
	position: relative;
	padding-left: 3em;
}

blockquote::before {
	content: "\201C";
	position: absolute;
	left: 0;
	top: 0;
	font-family: georgia, serif;
	font-size: 5em;
	line-height: 0.9;
	color: rgba(0, 0, 0, 0.3);
}

blockquote > footer {
	margin-top: .75em;
	font-size: 0.9em;
	color: rgba(0, 0, 0, 0.7);
}

blockquote > footer::before {
	content: "\2014 \0020";
}

q {
	font-style: normal;
}

q,
.q {
	quotes: "ÔÇ£\00a0" "\00a0ÔÇØ";
}

q:lang(fr),
.q:lang(fr) {
	quotes: "┬½\00a0" "\00a0┬╗";
}

hr {
	display: block;
	clear: both;
	height: 1px;
	margin: 1em 0 2em;
	padding: 0;
	border: 0;
	color: #ccc;
	background-color: #ccc;
}

/* tables */
table,
.table {
	border: 1px solid #ccc;
}

caption {
	padding: 1rem;
	color: #555;
	font-style: italic;
}

td,
th {
	padding: 0.3em 0.8em;
	border: 1px #aaa dotted;
	text-align: left;
}

/* ----------------------------- */
/* ==Misc (skip links, hyphens)  */
/* ----------------------------- */
/* styling skip links */
.skip-links {
	position: absolute;
}
.skip-links a {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0.5em;
	background: black;
	color: white;
	text-decoration: none;
}
.skip-links a:focus {
	position: static;
	overflow: visible;
	clip: auto;
}

@media (max-width: 320px) {
	/* you shall not pass */
	div,
	textarea,
	table,
	td,
	th,
	code,
	pre,
	samp {
		word-wrap: break-word;
		hyphens: auto;
	}
}
@media (max-width: 320px) {
	.no-wrapping {
		word-wrap: normal;
		hyphens: manual;
	}
}
/* ----------------------------- */
/* ==Global Layout               */
/* ----------------------------- */
/* module, gains superpower "BFC" Block Formating Context */
.mod,
.bfc {
	overflow: hidden;
}

/* blocks that needs to be placed under floats */
.clear,
.line,
.row {
	clear: both;
}

/* blocks that must contain floats */
.clearfix::after,
.line::after {
	content: "";
	display: table;
	clear: both;
	border-collapse: collapse;
}

/* simple blocks alignment */
.left {
	margin-right: auto;
}

.right {
	margin-left: auto;
}

.center {
	margin-left: auto;
	margin-right: auto;
}

/* text and contents alignment */
.txtleft {
	text-align: left;
}

.txtright {
	text-align: right;
}

.txtcenter {
	text-align: center;
}

/* floating elements */
.fl {
	float: left;
}

img.fl {
	margin-right: 1rem;
}

.flr {
	float: right;
}

img.fr {
	margin-left: 1rem;
}

img.fl,
img.flr {
	margin-bottom: 0.5rem;
}

/* table layout */
.row {
	display: table;
	table-layout: fixed;
	width: 100%;
}

.row > *,
.col {
	display: table-cell;
	vertical-align: top;
}

/* no table-cell for script tag when body is a .row */
body > script {
	display: none !important;
}

/* inline-block */
.inbl {
	display: inline-block;
	vertical-align: top;
}

/* flexbox layout
http://www.alsacreations.com/tuto/lire/1493-css3-flexbox-layout-module.html
*/
[class*="flex-container"],
.flex-container {
	display: flex;
	flex-wrap: wrap;
}

.flex-container-h {
	flex-direction: row;
}

.flex-container-v {
	flex-direction: column;
}

.flex-item-fluid {
	flex: 1;
	min-width: 0;
}

.flex-item-first,
.grid-item-first {
	order: -1;
}

.flex-item-medium,
.grid-item-medium {
	order: 0;
}

.flex-item-last,
.grid-item-last {
	order: 1;
}

.flex-item-center,
.grid-item-center {
	margin: auto;
}

/* ---------------------------------- */
/* ==Grid Layout (grillade)           */
/* ---------------------------------- */
/* grid container */
[class*="grid-"] {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin-left: -2rem;
}

/* grid childs */
[class*="grid-"] > * {
	box-sizing: border-box;
	flex: 0 0 auto;
	width: calc(100% - 2rem - .01px);
	min-width: 0;
	min-height: 0;
	margin-left: 2rem;
}
@media (min-width: 321px) and (max-width: 640px) {
	[class*="grid-"] > * {
		width: calc(100% * 1 / 2 - 2rem - .01px);
	}
	[class*="grid-"] > *.grid-item-double {
		width: calc(100% - 2rem - .01px);
	}
}

@media (min-width: 641px) {
	[class*="grid-2"] > * {
		width: calc(100% * 1 / 2 - 2rem - .01px);
	}
	[class*="grid-2"] > .grid-item-double {
		width: calc(100% * 2 / 2 - 2rem);
	}

	[class*="grid-3"] > * {
		width: calc(100% * 1 / 3 - 2rem - .01px);
	}
	[class*="grid-3"] > .grid-item-double {
		width: calc(100% * 2 / 3 - 2rem);
	}

	[class*="grid-4"] > * {
		width: calc(100% * 1 / 4 - 2rem - .01px);
	}
	[class*="grid-4"] > .grid-item-double {
		width: calc(100% * 2 / 4 - 2rem);
	}

	[class*="grid-5"] > * {
		width: calc(100% * 1 / 5 - 2rem - .01px);
	}
	[class*="grid-5"] > .grid-item-double {
		width: calc(100% * 2 / 5 - 2rem);
	}

	[class*="grid-6"] > * {
		width: calc(100% * 1 / 6 - 2rem - .01px);
	}
	[class*="grid-6"] > .grid-item-double {
		width: calc(100% * 2 / 6 - 2rem);
	}

	[class*="grid-7"] > * {
		width: calc(100% * 1 / 7 - 2rem - .01px);
	}
	[class*="grid-7"] > .grid-item-double {
		width: calc(100% * 2 / 7 - 2rem);
	}

	[class*="grid-8"] > * {
		width: calc(100% * 1 / 8 - 2rem - .01px);
	}
	[class*="grid-8"] > .grid-item-double {
		width: calc(100% * 2 / 8 - 2rem);
	}

	[class*="grid-9"] > * {
		width: calc(100% * 1 / 9 - 2rem - .01px);
	}
	[class*="grid-9"] > .grid-item-double {
		width: calc(100% * 2 / 9 - 2rem);
	}

	[class*="grid-10"] > * {
		width: calc(100% * 1 / 10 - 2rem - .01px);
	}
	[class*="grid-10"] > .grid-item-double {
		width: calc(100% * 2 / 10 - 2rem);
	}

	[class*="grid-11"] > * {
		width: calc(100% * 1 / 11 - 2rem - .01px);
	}
	[class*="grid-11"] > .grid-item-double {
		width: calc(100% * 2 / 11 - 2rem);
	}

	[class*="grid-12"] > * {
		width: calc(100% * 1 / 12 - 2rem - .01px);
	}
	[class*="grid-12"] > .grid-item-double {
		width: calc(100% * 2 / 12 - 2rem);
	}
}
/* Responsive grid */
@media (min-width: 321px) and (max-width: 640px) {
	[class*="-small-4"] > * {
		width: calc(100% * 1 / 4 - 2rem - .01px);
	}

	[class*="-small-4"] > .grid-item-double {
		width: calc(100% * 1 / 2 - 2rem - .01px);
	}

	[class*="-small-3"] > * {
		width: calc(100% * 1 / 3 - 2rem - .01px);
	}

	[class*="-small-3"] > .grid-item-double {
		width: calc(100% * 2 / 3 - 2rem - .01px);
	}

	[class*="-small-2"] > * {
		width: calc(100% * 1 / 2 - 2rem - .01px);
	}

	[class*="-small-2"] > .grid-item-double {
		width: calc(100% - 2rem - .01px);
	}

	[class*="-small-1"] > * {
		width: calc(100% - 2rem - .01px);
	}

	[class*="-small-1"] > .grid-item-double {
		width: calc(100% - 2rem - .01px);
	}
}
@media (min-width: 641px) {
	.grid-2-1 > :nth-child(odd) {
		width: calc(66.66667% - 2rem);
	}
	.grid-2-1 > :nth-child(even) {
		width: calc(33.33333% - 2rem);
	}
}

@media (min-width: 641px) {
	.grid-1-2 > :nth-child(odd) {
		width: calc(33.33333% - 2rem);
	}
	.grid-1-2 > :nth-child(even) {
		width: calc(66.66667% - 2rem);
	}
}

@media (min-width: 641px) {
	.grid-3-1 > :nth-child(odd) {
		width: calc(75% - 2rem);
	}
	.grid-3-1 > :nth-child(even) {
		width: calc(25% - 2rem);
	}
}

@media (min-width: 641px) {
	.grid-1-3 > :nth-child(odd) {
		width: calc(25% - 2rem);
	}
	.grid-1-3 > :nth-child(even) {
		width: calc(75% - 2rem);
	}
}

@media (min-width: 641px) {
	.grid-3-2 > :nth-child(odd) {
		width: calc(60% - 2rem);
	}
	.grid-3-2 > :nth-child(even) {
		width: calc(40% - 2rem);
	}
}

@media (min-width: 641px) {
	.grid-2-3 > :nth-child(odd) {
		width: calc(40% - 2rem);
	}
	.grid-2-3 > :nth-child(even) {
		width: calc(60% - 2rem);
	}
}

@media (min-width: 641px) {
	.grid-4-1 > :nth-child(odd) {
		width: calc(80% - 2rem);
	}
	.grid-4-1 > :nth-child(even) {
		width: calc(20% - 2rem);
	}
}

@media (min-width: 641px) {
	.grid-1-4 > :nth-child(odd) {
		width: calc(20% - 2rem);
	}
	.grid-1-4 > :nth-child(even) {
		width: calc(80% - 2rem);
	}
}

.pull {
	margin-right: auto;
}

.push {
	margin-left: auto;
}

/* ----------------------------- */
/* ==Tables                      */
/* ----------------------------- */
table,
.table {
	width: 100%;
	max-width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	vertical-align: top;
}

.table {
	display: table;
}

#recaptcha_table,
.table-auto {
	table-layout: auto;
}

td,
th {
	vertical-align: top;
	min-width: 2rem;
	cursor: default;
}

/* ----------------------------- */
/* ==Forms                       */
/* ----------------------------- */
/* thanks to HTML5boilerplate,
* github.com/nathansmith/formalize and www.sitepen.com
*/
/* buttons */
.btn {
	display: inline-block;
}

/* forms items */
form,
fieldset {
	border: none;
}

input,
button,
select,
label,
.btn {
	font-family: inherit;
	font-size: inherit;
}

button,
input,
optgroup,
select,
textarea {
	color: #000;
}

label {
	vertical-align: middle;
	cursor: pointer;
}

legend {
	border: 0;
	white-space: normal;
}

textarea {
	min-height: 5em;
	vertical-align: top;
	font-family: inherit;
	font-size: inherit;
	resize: vertical;
}

select {
	-webkit-appearance: menulist-button;
}

/* if select styling bugs on WebKit */
/* select { -webkit-appearance: none; } */
/* 'x' appears on right of search input when text is entered. This removes it */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
	display: none;
}

::-webkit-input-placeholder {
	color: #777;
}

input:-moz-placeholder,
textarea:-moz-placeholder {
	color: #777;
}

.btn:focus,
input[type="button"]:focus,
button:focus {
	-webkit-tap-highlight-color: transparent;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* unstyled forms */
button.unstyled,
input[type="button"].unstyled,
input[type="submit"].unstyled,
input[type="reset"].unstyled {
	padding: 0;
	border: none;
	line-height: 1;
	text-align: left;
	background: none;
	border-radius: 0;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
button.unstyled:focus,
input[type="button"].unstyled:focus,
input[type="submit"].unstyled:focus,
input[type="reset"].unstyled:focus {
	box-shadow: none;
	outline: none;
}

/* ---------------------------------- */
/* ==Helpers                          */
/* ---------------------------------- */
/* State Helpers */
/* ------------- */
/* invisible for all */
.is-hidden,
[hidden] {
	display: none;
}

/* hidden but not for an assistive technology like a screen reader, Yahoo! method */
.visually-hidden {
	position: absolute !important;
	border: 0 !important;
	height: 1px !important;
	width: 1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
}

.is-disabled,
[disabled] {
	opacity: 0.5;
	pointer-events: none;
	cursor: not-allowed;
	filter: grayscale(1);
}

ul.is-unstyled,
ul.unstyled {
	list-style: none;
	padding-left: 0;
}

/* Width Helpers */
/* ------------- */
/* blocks widths (percentage and pixels) */
.w10 {
	width: 10%;
}

.w20 {
	width: 20%;
}

.w25 {
	width: 25%;
}

.w30 {
	width: 30%;
}

.w33 {
	width: 33.3333%;
}

.w40 {
	width: 40%;
}

.w50 {
	width: 50%;
}

.w60 {
	width: 60%;
}

.w66 {
	width: 66.6666%;
}

.w70 {
	width: 70%;
}

.w75 {
	width: 75%;
}

.w80 {
	width: 80%;
}

.w90 {
	width: 90%;
}

.w100 {
	width: 100%;
}

.w50p {
	width: 50px;
}

.w100p {
	width: 100px;
}

.w150p {
	width: 150px;
}

.w200p {
	width: 200px;
}

.w300p {
	width: 300px;
}

@media (min-width: 400px) {
	.w400p {
		width: 400px;
	}

	.w500p {
		width: 500px;
	}

	.w600p {
		width: 600px;
	}
}
@media (min-width: 700px) {
	.w700p {
		width: 700px;
	}

	.w800p {
		width: 800px;
	}
}
@media (min-width: 960px) {
	.w960p {
		width: 960px;
	}

	.mw960p {
		max-width: 960px;
	}

	.w1140p {
		width: 1140px;
	}

	.mw1140p {
		max-width: 1140px;
	}
}
.wauto {
	width: auto;
}

/* Spacing Helpers */
/* --------------- */
.man,
.ma0 {
	margin: 0;
}

.pan,
.pa0 {
	padding: 0;
}

.mas {
	margin: 1rem;
}

.mam {
	margin: 2rem;
}

.mal {
	margin: 4rem;
}

.pas {
	padding: 1rem;
}

.pam {
	padding: 2rem;
}

.pal {
	padding: 4rem;
}

.mtn,
.mt0 {
	margin-top: 0;
}

.mts {
	margin-top: 1rem;
}

.mtm {
	margin-top: 2rem;
}

.mtl {
	margin-top: 4rem;
}

.mrn,
.mr0 {
	margin-right: 0;
}

.mrs {
	margin-right: 1rem;
}

.mrm {
	margin-right: 2rem;
}

.mrl {
	margin-right: 4rem;
}

.mbn,
.mb0 {
	margin-bottom: 0;
}

.mbs {
	margin-bottom: 1rem;
}

.mbm {
	margin-bottom: 2rem;
}

.mbl {
	margin-bottom: 4rem;
}

.mln,
.ml0 {
	margin-left: 0;
}

.mls {
	margin-left: 1rem;
}

.mlm {
	margin-left: 2rem;
}

.mll {
	margin-left: 4rem;
}

.mauto {
	margin: auto;
}

.mtauto {
	margin-top: auto;
}

.mrauto {
	margin-right: auto;
}

.mbauto {
	margin-bottom: auto;
}

.mlauto {
	margin-left: auto;
}

.ptn,
.pt0 {
	padding-top: 0;
}

.pts {
	padding-top: 1rem;
}

.ptm {
	padding-top: 2rem;
}

.ptl {
	padding-top: 4rem;
}

.prn,
.pr0 {
	padding-right: 0;
}

.prs {
	padding-right: 1rem;
}

.prm {
	padding-right: 2rem;
}

.prl {
	padding-right: 4rem;
}

.pbn,
.pb0 {
	padding-bottom: 0;
}

.pbs {
	padding-bottom: 1rem;
}

.pbm {
	padding-bottom: 2rem;
}

.pbl {
	padding-bottom: 4rem;
}

.pln,
.pl0 {
	padding-left: 0;
}

.pls {
	padding-left: 1rem;
}

.plm {
	padding-left: 2rem;
}

.pll {
	padding-left: 4rem;
}

/* -------------------------- */
/* ==Responsive helpers       */
/* -------------------------- */
/* large screens */
/* ------------- */
@media (min-width: 1280px) {
	/* layouts for large screens */
	.large-hidden {
		display: none !important;
	}

	.large-visible {
		display: block !important;
	}

	.large-no-float {
		float: none;
	}

	.large-inbl {
		display: inline-block;
		float: none;
		vertical-align: top;
	}

	.large-row {
		display: table;
		table-layout: fixed;
		width: 100% !important;
	}

	.large-col {
		display: table-cell;
		vertical-align: top;
	}

	/* widths for large screens */
	.large-w25 {
		width: 25% !important;
	}

	.large-w33 {
		width: 33.3333% !important;
	}

	.large-w50 {
		width: 50% !important;
	}

	.large-w66 {
		width: 66.6666% !important;
	}

	.large-w75 {
		width: 75% !important;
	}

	.large-w100,
	.large-wauto {
		display: block !important;
		float: none !important;
		clear: none !important;
		width: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		border: 0;
	}

	/* margins for large screens */
	.large-man,
	.large-ma0 {
		margin: 0 !important;
	}
}
/* medium screens */
/* -------------- */
@media (min-width: 960px) and (max-width: 1279px) {
	/* layouts for medium screens */
	.medium-hidden {
		display: none !important;
	}

	.medium-visible {
		display: block !important;
	}

	.medium-no-float {
		float: none;
	}

	.medium-inbl {
		display: inline-block;
		float: none;
		vertical-align: top;
	}

	.medium-row {
		display: table;
		table-layout: fixed;
		width: 100% !important;
	}

	.medium-col {
		display: table-cell;
		vertical-align: top;
	}

	/* widths for medium screens */
	.medium-w25 {
		width: 25% !important;
	}

	.medium-w33 {
		width: 33.3333% !important;
	}

	.medium-w50 {
		width: 50% !important;
	}

	.medium-w66 {
		width: 66.6666% !important;
	}

	.medium-w75 {
		width: 75% !important;
	}

	.medium-w100,
	.medium-wauto {
		display: block !important;
		float: none !important;
		clear: none !important;
		width: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		border: 0;
	}

	/* margins for medium screens */
	.medium-man,
	.medium-ma0 {
		margin: 0 !important;
	}
}
/* small screens */
/* ------------- */
@media (min-width: 640px) and (max-width: 959px) {
	/* layouts for small screens */
	.small-hidden {
		display: none !important;
	}

	.small-visible {
		display: block !important;
	}

	.small-no-float {
		float: none;
	}

	.small-inbl {
		display: inline-block;
		float: none;
		vertical-align: top;
	}

	.small-row {
		display: table !important;
		table-layout: fixed !important;
		width: 100% !important;
	}

	.small-col {
		display: table-cell !important;
		vertical-align: top !important;
	}

	/* widths for small screens */
	.small-w25 {
		width: 25% !important;
	}

	.small-w33 {
		width: 33.3333% !important;
	}

	.small-w50 {
		width: 50% !important;
	}

	.small-w66 {
		width: 66.6666% !important;
	}

	.small-w75 {
		width: 75% !important;
	}

	.small-w100,
	.small-wauto {
		display: block !important;
		float: none !important;
		clear: none !important;
		width: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		border: 0;
	}

	/* margins for small screens */
	.small-man,
	.small-ma0 {
		margin: 0 !important;
	}

	.small-pan,
	.small-pa0 {
		padding: 0 !important;
	}
}
/* tiny screens */
/* ------------ */
@media (max-width: 639px) {
	/* quick small resolution reset */
	.mod,
	.col,
	fieldset {
		display: block !important;
		float: none !important;
		clear: none !important;
		width: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		border: 0;
	}

	.flex-container {
		flex-direction: column;
	}

	.row {
		display: block !important;
		width: 100% !important;
	}

	/* layouts for tiny screens */
	.tiny-hidden {
		display: none !important;
	}

	.tiny-visible {
		display: block !important;
	}

	.tiny-no-float {
		float: none;
	}

	.tiny-inbl {
		display: inline-block;
		float: none;
		vertical-align: top;
	}

	.tiny-row {
		display: table !important;
		table-layout: fixed !important;
		width: 100% !important;
	}

	.tiny-col {
		display: table-cell !important;
		vertical-align: top !important;
	}

	th,
	td {
		display: block;
		width: auto;
		text-align: left;
	}

	thead {
		display: none;
	}

	/* widths for tiny screens */
	.tiny-w25 {
		width: 25% !important;
	}

	.tiny-w33 {
		width: 33.3333% !important;
	}

	.tiny-w50 {
		width: 50% !important;
	}

	.tiny-w66 {
		width: 66.6666% !important;
	}

	.tiny-w75 {
		width: 75% !important;
	}

	.tiny-w100,
	.tiny-wauto {
		display: block !important;
		float: none !important;
		clear: none !important;
		width: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		border: 0;
	}

	/* margins for tiny screens */
	.tiny-man,
	.tiny-ma0 {
		margin: 0 !important;
	}

	.tiny-pan,
	.tiny-pa0 {
		padding: 0 !important;
	}
}
/* ----------------------------- */
/* ==Own stylesheet              */
/* ----------------------------- */
/* Here should go your own CSS styles */
