audio,
canvas,
img,
video {
    vertical-align: middle;
}
fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}
textarea {
    resize: vertical;
}
html {
	font-size:100%;
}
button,
input,
select,
textarea,
body {
    color: #393939;
	font-size: 16px;
    line-height: 1.6em;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight:normal;
	text-rendering: geometricPrecision;
}
a {
	color:#1788c5;
	text-decoration:underline;
}
a:hover {
	color:#393939;
	text-decoration:underline;
}
::-moz-selection {
    background: #1788c5;
    text-shadow: none;
	color:#ffffff;
}

::selection {
    background: #1788c5;
    text-shadow: none;
	color:#ffffff;
}
input, textarea, select {
	background:#ffffff;
	border:1px solid #e8e7e3;
	color: #818b95;
	margin:0px;
	padding:10px 17px;
	line-height:1em;
	box-sizing: border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-moz-box-shadow:    inset 2px 2px 2px #f5f4f2;
   -webkit-box-shadow: inset 2px 2px 2px #f5f4f2;
   box-shadow:        inset 2px 2px 2px #f5f4f2;
   height:auto;
}
textarea {
	height:auto;
	padding:10px 17px;
}
input[disabled], textarea[disabled], select[disabled] {
	color: #989898;
}
.csstransitions input, .csstransitions textarea, .csstransitions select {
	-webkit-transition: border 0.1s ease-in-out, background 0.1s ease-in-out, color 0.1s ease-in-out;
	-moz-transition: border 0.1s ease-in-out, background 0.1s ease-in-out, color 0.1s ease-in-out;
	-o-transition: border 0.1s ease-in-out, background 0.1s ease-in-out, color 0.1s ease-in-out;
	transition: border 0.1s ease-in-out, background 0.1s ease-in-out, color 0.1s ease-in-out;
}
input:focus, textarea:focus, select:focus {
 color: #393939;
 border:1px solid #1788c5;
}
input::-webkit-input-placeholder, 
input::-moz-placeholder, 
input:-ms-input-placeholder, 
input:-moz-placeholder, 
select::-webkit-input-placeholder, 
select::-moz-placeholder, 
select:-ms-input-placeholder, 
select:-moz-placeholder, 
textarea::-webkit-input-placeholder, 
textarea::-moz-placeholder, 
textarea:-ms-input-placeholder, 
textarea:-moz-placeholder {
	color: #818b95;
	margin:0px;
	padding:10px 17px;
	line-height:1em;
}
input.button,
input.submit,
input[type=button],
input[type=submit] {
	background-color:#1788c5;
	border:1px solid #1788c5;
	border-bottom:1px solid #244e9a;
	color:#ffffff;
	cursor: pointer;
	width: auto !important;
	font-weight:normal;
	-moz-box-shadow:    inset 0px 0px 0px #f5f4f2;
   -webkit-box-shadow:  inset 0px 0px 0px #f5f4f2;
   box-shadow:         inset 0px 0px 0px #f5f4f2;
}
input:hover.button,
input:hover.submit,
input:hover[type=button],
input:hover[type=submit],
input:focus.button,
input:focus.submit,
input:focus[type=button],
input:focus[type=submit] {
	background-color:#393939;
	border:1px solid #393939;
	border-bottom:1px solid #2b2b2b;
}

body, html {
	width:100%;
	height:100%;
}
body {
	background: #ffffff;
	margin:0;
	position:relative;
}

.short-contact {
	padding:18px 20px;
	background:#f5f4f2;
	border-bottom:1px solid #e8e7e3;
	color:#85837f;
	font-size:16px;
}
.short-contact:before, .short-contact:after { content: " "; display: table; }
.short-contact:after { clear: both; }
.short-contact { *zoom: 1; }
.short-contact b {
	display:block;
	float:left;
	line-height:1em;
	font-weight:normal;
	margin-left:20px;
}
.short-contact b:first-child {
	margin-left:0;
}
.short-contact a {
	display:block;
	float:left;
	line-height:1em;
	font-weight:bold;
	margin-left:20px;
	color:inherit;
	text-decoration:none;
}
.short-contact em {
	display:block;
	float:right;
	line-height:1em;
	font-weight:normal;
	font-style:normal;
}



.header {
	padding:0px 20px;
}
.header div {
	padding:20px 0px 40px;
}
.header div:before, .header div:after { content: " "; display: table; }
.header div:after { clear: both; }
.header div { *zoom: 1; }
.header a.logo {
	float:left;
	display:block;
}
.header a.logo img {
	display:block;
	height:70px;
}
.header b {
	display:none;
}
.header strong {
	float:left;
	margin-left:40px;
	display:block;
	line-height:70px;
	font-size:24px;
	font-weight:bold;
	text-transform:uppercase;
}
.header strong span {
	font-weight:300;
}
.header a.promo {
	display:block;
	float:right;
	text-decoration:none;
	color:#ffffff;
	background:#ff1e00;
	height:50px;
	line-height:50px;
	padding:0px 15px;
	font-size:18px;
	font-weight:bold;
	text-transform:uppercase;
	margin-top:10px;
}
.header a.promo em {
	font-style:inherit;
	font-weight:inherit;
	display:none;
}
.header a.promo em:first-child {
	display:inline;
}
.header a.promo:hover {
	text-decoration:none;
	color:#ffffff;
	background:#393939;
}

.error {
	padding:0px 20px 20px;
}
.error div {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	display:block;
	background:#e70000;
	border-bottom:1px solid #c70000;
	color:#ffffff;
	font-size:16px;
	font-weight:normal;
	line-height:1.2em;
	padding:10px 20px;
}
.login {
	display:block;
	padding-bottom:45px;
}
.login:before, .login:after { content: " "; display: table; }
.login:after { clear: both; }
.login { *zoom: 1; }
.login .col {
	display:block;
	float:left;
	width:33.333%;
	box-sizing: border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	padding:0px 20px;
}
.login .col form {
	padding:0;
	margin:0;
}
.login .col .colorbox {
	margin-top:20px;
	padding:20px;
	display:block;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	background:#f5f4f2;
	border:1px solid #e8e7e3;
	font-weight:bold;
}
.login .col .colorbox:first-child {
	margin-top:0
}
.login .col .colorbox.colorbox-success {
	background:#dff0d8;
	border:1px solid #d6e9c6;
	color:#468847;
}
.login .col .colorbox.colorbox-error {
	background:#f2dede;
	border:1px solid #eed3d7;
	color:#b94a48;
}
.login .col .box {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	display:block;
	background:#f5f4f2;
	border-bottom:1px solid #e8e7e3;
	padding:20px;
	margin-top:20px;
}
.login .col .box:first-child {
	margin-top:0px;
}
.login .col .box.promos {
	background:#ffffff;
	border-bottom:1px solid #ffffff;
}
.login .col .box .boxtitle {
	display:block;
	line-height:1em;
	font-size:24px;
	font-weight:500;
	padding-bottom:25px;
}
.login .col .box .fields span {
	display:block;
	margin-top:15px;
}
.login .col .box .fields span:first-child {
	margin-top:0;
}
.login .col .box .fields span em {
	display:block;
	line-height:1em;
	font-style:normal;
	font-weight:normal;
	padding-bottom:7px;
}
.login .col .box input {
	width:100%;
}
.login .col .box .radios input {
	width:auto;
	padding:0px;
	margin-left:14px
}
.login .col .box .radios input:first-child {
	margin-left:0;
}
.login .col .box .radios label {
	padding-left:8px;
}
.login .col .box.promos ul {
	display:block;
	padding:0;
	margin:0;
	list-style-type:none;
}
.login .col .box.promos ul li {
	display:block;
	padding:0;
	margin:0;
	margin-top:15px;
	padding-top:15px;
	border-top:1px dashed #cfcfcf;
}
.login .col .box.promos ul li:first-child {
	margin-top:0;
	padding-top:0;
	border-top:0px;
}
.login .col .box.promos ul li a {
	display:block;
	text-decoration:none;
	color:inherit;
	line-height:1em;
}
.login .col .box.promos ul li a:hover {
	color:#1788c5;
}
.login .col .box.promos ul li a em {
	display:block;
	font-size:14px;
	color:#9e9e9e;
	line-height:1em;
	padding-bottom:5px;
}

.infos {
	display:table;
	width:100%;
	padding:0;
	margin:0;
	background:#fcf8e3;
}
.infos-row {
	display:table-row;
	width:100%;
	padding:0;
	margin:0;
}
.infos-col {
	display:table-cell;
	vertical-align:middle;
	width:33.333%;
	box-sizing: border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	padding:30px 40px;
	text-align:left;
}
.infos-col.infos-blue {
	background:#d9edf7;
	border:1px solid #bce8f1;
	border-left:0px;
}
.infos-col.infos-green {
	background:#dff0d8;
	border:1px solid #d6e9c6;
	border-left:0px;
}
.infos-col.infos-yellow {
	background:#fcf8e3;
	border:1px solid #fbeed5;
	border-left:0px;
}


@media only screen and (max-width:1100px){
	.short-contact {
		padding-top:10px;
		padding-bottom:10px;
		font-size:14px;
	}
	.header a.logo img {
		height:50px;
	}
	.header strong {
		margin-left:20px;
		line-height:50px;
		font-size:18px;
	}
	.header a.promo {
		height:40px;
		line-height:40px;
		padding:0px 10px;
		font-size:16px;
		margin-top:5px;
	}
}
@media only screen and (max-width:1000px){
	.short-contact {
		padding-left:10px;
		padding-right:10px;
	}
	.header {
		padding:0px 10px;
	}
	.short-contact a {
		margin-left:0;
		float:right;
	}
	.short-contact em {
		display:none;
	}
	.login {
	}
	.login .col {
		padding-left:10px;
		padding-right:10px;
	}
	.login .col .box .boxtitle {
		font-size:18px;
	}
	.infos-col {
		padding:20px 30px;
	}
}
@media only screen and (max-width:800px){
	.header b {
		float:left;
		display:block;
		line-height:50px;
		font-size:20px;
		font-weight:bold;
		margin-left:20px;
	}	 
	.header strong {
		display:none;
	}
	.login .col {
		width:auto;
		float:none;
		margin-top:20px;
	}
	.login .col:first-child {
		margin-top:0px;
	}
	.infos {
		display:block;
		width:auto;
	}
	.infos-row {
		display:block;
		width:auto;
	}
	.infos-col {
		display:block;
		vertical-align:baseline;
		width:auto;
	}
}
@media only screen and (max-width:580px){	
	.short-contact b {
		display:inline-block;
		float:none;
		margin-left:12px;
	}
	.short-contact a {
		float:none;
		padding-top:5px;
	}
	.header a.promo em {
		display:inline;
	}
	.header a.promo em:first-child {
		display:none;
	}
}
@media only screen and (max-width:450px){
	.short-contact b {
		margin-left:0px;
		padding-left:5px;
		padding-right:5px;
	}
	.short-contact {
		text-align:center;
	}
	.header div {
		text-align:center;
	}
	.header a.logo {
		float:none;
		display:inline-block;
	}
	.header b {
		display:none;
	}
	.header strong {
		float:none;
		display:block;
		margin:0;
		padding:0;
		line-height:1em;
		font-size:16px;
		padding-top:5px;
		padding-bottom:15px;
	}
	.header a.promo {
		display:inline-block;
		float:none;
		height:auto;
		line-height:1em;
		padding-top:5px;
		padding-bottom:5px;
	}
	.header a.promo em {
		display:none;
	}
	.header a.promo em:first-child {
		display:inline;
	}
}

 
 
.page-text:before, 
.page-text:after {
    content: " ";
    display: table;
}
.page-text:after {
    clear: both;
}
.page-text {
    *zoom: 1;
}
.page-text {
	color: #393939;
	font-size: 16px;
    line-height: 1.6em;
	font-weight:normal;
}
.page-text h1, 
.page-text h2, 
.page-text h3, 
.page-text h4, 
.page-text h5, 
.page-text h6 {
	padding:0px;
	margin:0px;
	font-weight:300;
	color:#1788c5;
	font-family:Source Sans Pro;
	line-height:1.2em;
	margin-top:20px;
}
.page-text h1:first-child, 
.page-text h2:first-child, 
.page-text h3:first-child, 
.page-text h4:first-child, 
.page-text h5:first-child, 
.page-text h6:first-child {
	margin-top:0px;
}
.page-text h1 { font-size:36px;}
.page-text h2 { font-size:32px;}
.page-text h3 { font-size:28px;}
.page-text h4 { font-size:24px;}
.page-text h5 { font-size:20px;}
.page-text h6 { font-size:18px;}
.page-text p {
	padding:0px;
	margin:0px;
	margin-top:20px;
	position:relative;
}
.page-text p:first-child {
	margin-top:0px;
}
.page-text a {
	color:#1788c5;
	text-decoration:underline;
}
.page-text a:hover {
	color:#393939;
	text-decoration:underline;
}
.page-text blockquote {
	padding:0px;
	margin:0px;
	display:block;
	background:#f5f5f5;
	border-left:4px solid #1788c5;
	padding:30px;
	font-style:italic;
	margin-top:20px;
}
.page-text blockqoute:first-child {
	margin-top:0px;
}
.page-text ul,
.page-text ol {
	padding:0px;
	margin:0px;
	margin-top:20px;
	list-style-type: disc;
}
.page-text ol {
	list-style-type: decimal;
}
.page-text ul:first-child,
.page-text ol:first-child {
	margin-top:0px;
}
.page-text ul ul,
.page-text ol ul {
	list-style-type:square;
}
.page-text ul ul,
.page-text ul ol,
.page-text ol ol,
.page-text ol ul,
.page-text ul ul:first-child,
.page-text ul ol:first-child,
.page-text ol ol:first-child,
.page-text ol ul:first-child {
	margin-top:8px;
}
.page-text ul li,
.page-text ol li{
	padding:0px;
	margin:0px;
	margin-left:45px;
	padding-left:25px;
	margin-top:8px;
}
.page-text ul li:first-child,
.page-text ol li:first-child {
	margin-top:0px;
}
.page-text ul ul li,
.page-text ul ol li,
.page-text ol ol li,
.page-text ol ul li {
	margin-left:15px;
	padding-left:15px;
}
.page-text hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px dashed #ceccd7;
    margin: 20px 0 0;
    padding: 0;
}
.page-text hr:first-child {
    margin: 0 0 0;
}
.page-text table {
	border-collapse:separate;
    *border-collapse: collapse;
    border-spacing: 0; 
	border:1px solid #ceccd7;
	margin-top:20px;
}
.page-text table:first-child {
	margin-top:0px;
}
.page-text tr th,
.page-text tr td {
	border:0px;
	padding:12px 20px;
	border-left:1px solid #ceccd7;
	border-top:1px solid #ceccd7;
}
.page-text tr th:first-child,
.page-text tr td:first-child {
	border-left:0px;
}
.page-text tr:first-child th,
.page-text tr:first-child td {
	border-top:0px;
}
.page-text table.noborder {
	border-collapse:separate;
    *border-collapse: collapse;
    border-spacing: 0; 
	border:0px;
}
.page-text table.noborder tr th,
.page-text table.noborder tr td {
	border:0px;
	padding:0px;
	border-left:0px;
	border-top:0px;
	padding-left:20px;
	padding-top:20px;
}
.page-text table.noborder tr th:first-child,
.page-text table.noborder tr td:first-child {
	border-left:0px;
	padding-left:0px;
}
.page-text table.noborder tr:first-child th,
.page-text table.noborder tr:first-child td {
	border-top:0px;
	padding-top:0px;
}


/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}