/* ----------------------------- */
/* ==reset */
/* ----------------------------- */

/* base font-size corresponds to 10px and is adapted to rem unit */
html {
    font-size: 62.5%;
}

body {
    background-color: #fff;
    color: #000;
    font-family: "Century Gothic", helvetica, arial, sans-serif;
    font-size: 1.6rem; /* equiv 14px */
    line-height: 1.5; /* adapt to your design */
}

.container {
    max-width: 1140px;
    margin: 0 auto;
}

/* font-sizing for content */
/* preserve vertical-rythm, thanks to http://soqr.fr/vertical-rhythm/ */
p,
td,
label {
    font-size: 1em; /* equiv 14px */
    line-height: 1.5;
    margin: 1.5em 0 0;
}
h1 {
    font-size: 1.8571em; /* equiv 26px */
    font-weight: normal;
    line-height: 1.6154em;
    margin: .8077em 0 0 0;
}
h2 {
    font-size: 1.7143em; /* equiv 24px */
    font-weight: normal;
    line-height: 1.75em;
    margin: .875em 0 0 0;
}
h3 {
    font-size: 1.5714em; /* equiv 22px */
    font-weight: normal;
    line-height: 1.909em;
    margin: .9545em 0 0 0;
}

/* alternate font-sizing */
.smaller {
    font-size: .7143em; /* equiv 10px */
    line-height: 2.1em;
}
.small {
    font-size: .8571em; /* equiv 12px */
    line-height: 1.75em;
}
.big {
    font-size: 1.1429em; /* equiv 16px */
    line-height: 1.3125em;
}
.bigger {
    font-size: 1.2857em; /* equiv 18px */
    line-height: 1.1667em;
}
.biggest {
    font-size: 1.4286em; /* equiv 20px */
    line-height: 1.05em;
}

/* soft reset */
html,
body,
label {
    margin: 0;
    padding: 0;
}

table { margin-bottom: 1.5em; }

/* avoid top margins on first content element */
p:first-child,
h1:first-child,
h2:first-child,
h3:first-child {
    margin-top: 0;
}

/* max values */
img, table, td, input {
    max-width: 100%;
}

/* you shall not pass */
div, table, td {
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    -o-hyphens: auto;
    hyphens: auto;
}

/* pictures */
img {
    width: auto;
    height: auto;
    vertical-align: middle;
}
a img { border: 0; }

/* scripts */
body > script {display: none !important;}

/* Mise en forme simple pour les tableaux */
table {
    margin: 0;
    border: 1px solid gray; /* Pas de bordure = "none". */
    border-collapse: collapse; /* Valeur par défaut: "separate". */
    border-spacing: 0;
}
table td, table th {
    padding: 4px; /* Pas de retrait autour du texte = "0". */
    border: 1px solid #ccc; /* Pas de bordure = "none". */
    vertical-align: top; /* Valeur par défaut: "middle" */
}

.row {
    margin: 1em 0;
}

table, table td {
    border: 0;
}
table td span {
    font-weight: bold;
}

div.campaign,
div.current,
div.organism {
    border: solid 1px #ccc;
    border-top: solid 3px #0f6baf;
    padding: 1em;
    margin: 1em 0;
}

div.next {
    border: 0;
    padding: 1em 0;
    margin: 0;
}

div.current {
    margin-bottom: 0;
}


div.container div.row div.header table {
    margin: 0 auto 1.5em auto;
}

div.container div.row div.campaign table {
    margin: 0 auto;
}
div.container div.row div.campaign td,
div.container div.row div.header td {
    vertical-align: middle;
    padding: 0 0.5em;
}

div.container div.row div.teaser {
    clear: both;
}

div.campaign {
    text-align: center;
}

div.organism table,
div.current table {
    width: 100%;
}

div.formulaire table {
    width: 100%;
}

div.formulaire table td {
    width: 50%;
    padding: 0 0 0 1em;
}

div.formulaire table td.left {
    padding-left: 0;
}

div.formulaire table td fieldset {
    padding: 0 0 1em 0;
    margin-top: -1em;
    border: 0;
    border-top: solid 3px #0f6baf;
}

div.formulaire table td fieldset legend {
    margin-top: 3em;
    margin-bottom: 1em;
    font-size: 1.25em;
    font-weight: bold;
}

div.formulaire label,
div.next label {
    display: block;
    font-weight: bold;
}
div.formulaire input {
    width: 90%;
}

div.formulaire p.advertise {
    margin: 0 0 1em 0;
}

div.next div {
    text-align: center;
}

div.flash-info {
    text-align: center;
    color: #00733e;
    border: solid 2px #008749;
    background: palegreen;
    padding: 1em;
    margin: 1em 0;
    font-weight: bold;
}

div#partner button#partner_save.btn-submit {
    clear: both;
    float: right;
    margin-bottom: 1em;
    color: #fff;
    background: #0f6baf;
    border-color: #0f6baf;
}

form div.next div ul {
    margin: 0;
    padding: 0;
}

form div div ul {
    margin-left: 0;
    padding-left: 0;
}
form div div ul li {
    list-style: none;
    text-align: left;
    color: #C82829;
    padding: 0;
    margin: 0;
    font-weight: bold;
    font-size: 90%;
}

h2.error404 {
    font-weight: 900;
    font-size: 2.2em;
}

p.error404 {
    font-weight: bold;
}

@media screen and (-webkit-min-device-pixel-ratio:0) { 

    div.formulaire table td fieldset {
        padding: 2em 0 1em 0;
        margin-top: 1.5em;
        position: relative;
    }

    div.formulaire table td fieldset legend {
        margin-top: 0;
        margin-bottom: 1em;
        position: absolute;
        top: 0;
    }

}