/* normalize.css v2.1.3 | MIT License | git.io/normalize */
/* Stylus port - Switch Team */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden],
template {
  display: none;
}
html {
  font-family: sans-serif /* 1 */;
  -ms-text-size-adjust: 100% /* 2 */;
  -webkit-text-size-adjust: 100% /* 2 */;
}
body {
  margin: 0;
}
a {
  background: transparent;
}
a:active,
a:hover {
  outline: 0;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}
mark {
  background: #ff0;
  color: #000;
}
code,
kbd,
pre,
samp {
  font-family: monospace serif;
  font-size: 1em;
}
pre {
  white-space: pre-wrap;
}
q {
  quotes: "\201C" "\201D" "\2018" "\2019";
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 0;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  border: 0 /* 1 */;
  padding: 0 /* 2 */;
}
button,
input,
select,
textarea {
  font-family: inherit /* 1 */;
  font-size: 100% /* 2 */;
  margin: 0 /* 3 */;
}
button,
input {
  line-height: normal;
  border-radius: 0;
}
button,
select {
  text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button /* 2 */;
  cursor: pointer /* 3 */;
}
button[disabled],
html input[disabled] {
  cursor: default;
}
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box /* 1 */;
  padding: 0 /* 2 */;
}
input[type="search"] {
  -webkit-appearance: none /* 1 */;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box /* 2 */;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
textarea {
  border-radius: 0;
  overflow: auto /* 1 */;
  vertical-align: top /* 2 */;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
body {
  background: #1f4ba4;
  font-family: "Open Sans", "Gill Sans MT", "Gill Sans", Corbel, Arial, sans-serif;
  font-size: 100%;
}
input {
  -webkit-appearance: none;
}
input,
button,
textarea {
  background-image: none;
}
.sttl {
  font-size: 1.375em;
  line-height: 1;
  font-weight: 600;
  margin: 0.909090909090909em 0;
  text-transform: uppercase;
  color: #fff;
}
.sttl span {
  display: inline-block;
  padding: 0.227272727272727em 0.363636363636364em 0.227272727272727em 0.454545454545455em;
  background-color: #000;
}
.sttl em {
  display: block;
  font-style: normal;
}
p,
li {
  color: #fff;
  font-size: 0.8125em;
  line-height: 1.615384615384615;
}
p a,
li a {
  color: #fff;
}
ul {
  list-style: none;
  padding: 0;
  margin-top: -1em;
}
li:before {
  content: "-";
  padding-right: 0.5em;
}
label {
  cursor: pointer;
}
input,
textarea {
  box-sizing: border-box;
  height: 2.5em;
  line-height: 2.25;
  padding: 0 0.75em;
  border: 2px solid #1f4ba4;
  font-weight: 600;
}
input,
textarea {
  text-transform: uppercase;
  color: #1f4ba4;
}
.opacity input[type=checkbox],
.opacity input[type=radio] {
  position: absolute;
  visibility: hidden;
  left: -100%;
}
.opacity input[type=checkbox] + label:before,
.opacity input[type=radio] + label:before {
  content: '✖';
  display: inline-block;
  box-sizing: border-box;
  width: 1.7em;
  height: 1.7em;
  margin-right: 0.4em;
  border-radius: 2px;
  border: 2px solid #1f4ba4;
  font-size: 1.428571428571429em;
  line-height: 1.5;
  text-align: center;
  color: #e6e6e6;
}
.opacity input[type=checkbox]:checked + label:before,
.opacity input[type=radio]:checked + label:before,
.opacity input[type=checkbox]:checked + label.after:after,
.opacity input[type=radio]:checked + label.after:after {
  color: #1f4ba4;
}
.opacity input[type=checkbox] + label.after:before,
.opacity input[type=radio] + label.after:before {
  content: none;
}
.opacity input[type=checkbox] + label.after:after,
.opacity input[type=radio] + label.after:after {
  content: '✖';
  display: inline-block;
  box-sizing: border-box;
  width: 1.7em;
  height: 1.7em;
  margin-left: 0.4em;
  border-radius: 2px;
  border: 2px solid #1f4ba4;
  font-size: 1.428571428571429em;
  line-height: 1.5;
  text-align: center;
  color: #e6e6e6;
}
textarea {
  resize: vertical;
}
html,
body,
[id=main] {
  height: 100%;
}
[class^=bt-] {
  -webkit-touch-callout: none;
  background: none;
  border-width: 0;
  display: inline-block;
  font-family: "Open Sans", "Gill Sans MT", "Gill Sans", Corbel, Arial, sans-serif;
  font-weight: 500;
  outline-width: 0;
  padding: 0;
  text-align: left;
  text-decoration: none;
}
.bt-filter {
  background-color: #000;
  border: 2px solid #000;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  padding: 0.625em;
  font-size: 1.230769230769231em;
  font-weight: 600;
  line-height: 1.125;
  text-transform: uppercase;
  transition: border-color 0.3s linear;
}
.bt-filter.active {
  border: 2px solid #fff;
}
header[role="banner"] {
  position: relative;
  min-height: 30em;
  height: 100%;
  background-color: #1f4ba4;
}
header[role="banner"] .showForm {
  position: relative;
  top: 0;
  display: block;
  width: 100%;
  height: 1.625em;
  background-color: #e62520;
}
header[role="banner"] .showForm:before,
header[role="banner"] .showForm:after {
  content: '';
  position: absolute;
  bottom: -2em;
  left: 50%;
  display: block;
}
header[role="banner"] .showForm:before {
  margin-left: -2em;
  border-top: 2em solid #e62520;
  border-left: 2em solid transparent;
  height: 0;
  width: 0;
}
header[role="banner"] .showForm:after {
  border-top: 2em solid #e62520;
  border-right: 2em solid transparent;
  height: 0;
  width: 0;
}
header[role="banner"] div.welcome {
  position: relative;
  top: 50%;
  max-width: 27.375em;
  max-height: 34.5em;
  margin: -20.75em auto 0;
  padding: 0 0.9375em;
  z-index: 1;
}
.opacity header[role="banner"] div.welcome {
  margin-top: -2.5em;
  transform: translateY(-50%);
}
header[role="banner"] h1 {
  background: url("/medias/imgs/bg-title.png") no-repeat 0 0;
  background-size: 100% auto;
  margin: 0;
  padding-top: 54.794520547945204%;
  padding-bottom: 28.31050228310502%;
  font-size: 1em;
}
[lang=fr] header[role="banner"] h1 {
  padding-top: 52.51141552511416%;
}
header[role="banner"] img {
  display: block;
  width: 73.51598173515981%;
  margin: 0 auto;
}
footer[role=contentinfo] {
  overflow: hidden;
  background-color: #000;
}
footer[role=contentinfo] ul {
  width: 100%;
  text-align: center;
  font-weight: 300;
  margin: 0;
  padding: 2.5625em 0;
  line-height: 1;
}
footer[role=contentinfo] ul li {
  display: inline-block;
}
footer[role=contentinfo] ul li a {
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid #c4c4c4;
  transition: border-color 0.35s linear;
}
footer[role=contentinfo] ul li a:hover {
  border-bottom: 1px solid #fff;
}
footer[role=contentinfo] ul li:before {
  content: '-';
  padding: 0 0.625em 0 0.3125em;
}
footer[role=contentinfo] ul li.title {
  font-weight: 400;
}
footer[role=contentinfo] ul li.title:before {
  content: none;
}
.graphics span {
  z-index: 9;
  position: absolute;
  display: block;
  background-size: cover;
  background-position: 0 0;
  backgrount-repeat: no-repeat;
}
.graphics .sun {
  right: 5%;
  top: 5%;
  width: 4.8125em;
  height: 4.8125em;
  border-radius: 50%;
  background-color: #fff;
}
.graphics .cloud1 {
  left: 30%;
  bottom: 5%;
  width: 7.125em;
  height: 2.625em;
  background-image: url("/medias/imgs/assets/cloud1.png");
}
.graphics .cloudgroup1 .cloud2 {
  left: 15%;
  bottom: 18%;
  width: 6.875em;
  height: 3em;
  background-image: url("/medias/imgs/assets/cloud2.png");
}
.graphics .cloudgroup1 .cloud3 {
  left: 19%;
  bottom: 16%;
  width: 4.5em;
  height: 2.15625em;
  background-image: url("/medias/imgs/assets/cloud3.png");
}
.graphics .plane1 {
  left: 22%;
  top: 6%;
  width: 4.15625em;
  height: 2.25em;
  background-image: url("/medias/imgs/assets/plane1.png");
}
.graphics .plane2 {
  right: 0;
  bottom: 10%;
  width: 3.375em;
  height: 2.90625em;
  background-image: url("/medias/imgs/assets/plane2.png");
}
.login {
  min-height: 30em;
  height: 100%;
  padding: 0 0.625em;
  overflow: hidden;
}
.login [id=main] {
  position: relative;
  z-index: 10;
  top: 50%;
  background: url("/medias/imgs/bg-title.png") no-repeat 0 0;
  background-size: 100% auto;
  max-width: 27.375em;
  max-height: 34.5em;
  box-sizing: border-box;
  margin: -19.125em auto 0;
}
.opacity .login [id=main] {
  background-position: 50% 50%;
  height: 100%;
  max-height: 100%;
  margin-top: 0;
  top: auto;
}
.login [id=main] input {
  color: #000;
  border: 0 none;
  border-bottom: 1px solid #000;
placeholder()
}
.login [id=main] input:focus {
  outline: none;
}
.login [id=main] fieldset .fields {
  position: relative;
}
.login [id=main] fieldset .fields +div {
  position: relative;
  display: none;
}
.login [id=main] fieldset .error,
.login [id=main] fieldset .thanks {
  padding: 0 20px;
  text-align: center;
}
.login [id=main] fieldset .error p,
.login [id=main] fieldset .thanks p {
  margin: 2em 0;
}
.login [id=main] ul {
  padding: 0;
}
.login [id=main] li {
  list-style: none;
}
.login [id=main] label {
  cursor: pointer;
}
#login {
  padding-top: 48.401826484018265%;
  box-sizing: border-box;
  height: 100%;
}
.opacity #login {
  padding-top: 0;
  position: relative;
  top: 50%;
  height: auto;
  transform: translateY(-50%);
}
#login p {
  margin: 0;
  color: #000;
}
#login p.access {
  text-align: center;
  text-transform: uppercase;
  font-size: 0.75em;
  line-height: 14/12;
  margin: 1.666666666666667em 0;
}
#login .shortDate {
  margin: 0 auto 5px;
  text-transform: uppercase;
  text-align: center;
  font-weight: 600;
}
#login .enter {
  display: block;
  margin: 0 auto;
  width: 100%;
}
#login button {
  display: block;
  background: none;
  border: 0;
  font-weight: 700;
  padding: 0;
  text-align: center;
  transition: transform 0.5s ease-in, opacity 0.5s ease-in;
  width: 100%;
}
#login button span.text {
  display: block;
  text-transform: uppercase;
  font-size: 0.75em;
  line-height: 14/12;
}
#login button span.picture {
  display: block;
  width: 64px;
  height: 39px;
  background: url("/medias/imgs/submit.png") no-repeat 0 0;
  background-size: contain;
  margin: 0 auto;
}
#login button:focus {
  outline: none;
}
#login.submit button[type=submit] {
  opacity: 0;
}
#login fieldset {
  border: 0;
  position: relative;
  box-sizing: border-box;
  width: 67.12328767123287%;
  margin: 0 auto;
  padding: 30.136986301369863% 0 0;
}
[lang=fr] #login fieldset {
  width: 67.57990867579909%;
}
#login fieldset input {
  display: block;
  width: 100%;
  margin: 1.25em auto;
  text-align: center;
  line-height: 1.5;
  font-weight: 400;
  text-transform: uppercase;
}
#login .error p {
  margin: 3em 0;
}
[id=register] {
  background-color: #fff;
  overflow: hidden;
}
[id=register] p,
[id=register] div.text {
  color: #1f4ba4;
}
[id=register] form {
  max-width: 41.25em;
  margin: 0 auto 2.875em;
  padding: 0 0.625em;
}
[id=register] fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}
[id=register] fieldset .wrapper {
  position: relative;
}
[id=register] fieldset .wrapper div {
  position: absolute;
  width: 100%;
}
[id=register] fieldset .wrapper div.fields {
  position: relative;
}
[id=register] fieldset .wrapper div.plusOne,
[id=register] fieldset .wrapper div.plusMore,
[id=register] fieldset .wrapper div.text {
  position: static;
}
[id=register] fieldset .wrapper div.error,
[id=register] fieldset .wrapper div.thanks {
  top: 1.25em;
}
.opacity [id=register] fieldset .wrapper div.error,
.opacity [id=register] fieldset .wrapper div.thanks {
  top: 50%;
  transform: translateY(-50%);
}
[id=register] .plusOne p.text,
[id=register] .plusMore p.text {
  margin: 0;
}
[id=register] .plusOne p.text span,
[id=register] .plusMore p.text span {
  display: block;
  margin: 1em 0 0;
}
[id=register] [id=plusOne] ~ .plusOne {
  display: none;
}
[id=register] [id=plusOne]:checked ~ .plusOne {
  display: block;
}
[id=register] [id=plusMore] ~ .plusMore {
  display: none;
}
[id=register] [id=plusMore]:checked ~ .plusMore {
  display: block;
}
[id=register] legend {
  position: relative;
  width: 100%;
  margin-bottom: 1em;
  padding: 1.35em 0 1em;
  font-size: 1.25em;
  font-weight: 300;
  text-transform: uppercase;
  line-height: 1.2;
  text-align: center;
  color: #1f4ba4;
}
[id=register] legend:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  width: 17.4em;
  height: 1px;
  margin-left: -8.7em;
  background-color: #1f4ba4;
}
[id=register] legend span {
  font-weight: 600;
}
[id=register] button {
  background: none;
  color: #1f4ba4;
  box-sizing: border-box;
  height: 2.5em;
  padding: 0 0.75em;
  border: 2px solid #1f4ba4;
}
[id=register] .fields {
  position: relative;
  padding-top: 1.125em;
  text-transform: uppercase;
}
[id=register] .fields label[for="miss"].after {
  padding-right: 0;
}
[id=register] .fields p {
  font-size: 1em;
  margin: 1.1875em 0;
}
[id=register] .fields p:after {
  clear: both;
  content: "";
  display: table;
}
[id=register] .fields p.info {
  font-size: 0.8125em;
  text-transform: none;
  text-align: center;
}
[id=register] .fields p.info:first-child {
  margin-top: 0;
  margin-bottom: 2.375em;
}
[id=register] .fields label {
  display: block;
  padding-right: 1.071428571428571em;
  font-size: 0.875em;
  line-height: 2.857142857142857;
  vertical-align: middle;
}
[id=register] .fields .miss label {
  display: inline-block;
}
[id=register] .fields .miss button {
  float: right;
}
[id=register] .fields input {
  display: block;
  width: 100%;
  vertical-align: middle;
}
[id=register] .fields + div {
  display: none;
}
[id=register] .error {
  text-align: center;
}
[id=register] .error p {
  font-size: 1em;
}
[id=register] .thanks {
  text-align: center;
}
[id=register] .thanks p {
  text-align: center;
  font-size: 1.25em;
  line-height: 1.1;
}
[id=register] .thanks p.more {
  text-transform: none;
  font-size: 1em;
  line-height: 1.25;
  margin: 1.25em 0;
}
[id=register] p.notice {
  font-size: 0.875em;
  line-height: 1.142857142857143;
  margin: -0.714285714285714em 0 2.857142857142857em;
  text-transform: none;
  text-align: center;
}
[id=menu] {
  overflow: hidden;
  background-color: #e4e2c6;
  min-height: 100%;
}
[id=menu] ul {
  position: relative;
  left: 0;
  margin: 0.769230769230769em auto;
  max-width: 73.07692307692308em;
  text-align: center;
}
[id=menu] li {
  display: inline-block;
  margin: 0.769230769230769em;
  width: 274px;
  vertical-align: middle;
}
[id=menu] li a {
  color: #fff;
  display: block;
  margin: 0 auto;
  text-decoration: none;
  box-sizing: border-box;
  transition: transform 0.3s ease-in-out;
}
[id=menu] li a > span {
  display: block;
  margin: 0 auto;
}
[id=menu] li a:hover,
[id=menu] li a:focus {
  transform: scale(1.05) rotate(0.3deg);
}
[id=menu] li:nth-child(even) a:hover,
[id=menu] li:nth-child(even) a:focus {
  transform: scale(1.05) rotate(-0.5deg);
}
[id=menu] li:before {
  content: none;
}
[id=menu] li .program {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: 0px -524px;
  width: 248px;
  height: 150px;
  padding-top: 3.923076923076923em;
}
[lang=fr] [id=menu] li .program {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: 0px -524px;
  width: 248px;
  height: 150px;
}
[id=menu] li .program span {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -690px 0px;
  width: 175px;
  height: 51px;
  font-size: 0;
}
[lang=fr] [id=menu] li .program span {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -690px 0px;
  width: 174px;
  height: 51px;
}
[id=menu] li .info {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: 0px -371px;
  width: 248px;
  height: 151px;
  padding-top: 4.230769230769231em;
}
[lang=fr] [id=menu] li .info {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: 0px -371px;
  width: 248px;
  height: 151px;
}
[id=menu] li .info span {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: 0px -676px;
  width: 200px;
  height: 50px;
  font-size: 0;
}
[lang=fr] [id=menu] li .info span {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -690px -53px;
  width: 94px;
  height: 50px;
}
[id=menu] li .about {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: 0px -216px;
  width: 248px;
  height: 153px;
  padding-top: 4.153846153846154em;
}
[lang=fr] [id=menu] li .about {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: 0px -216px;
  width: 248px;
  height: 153px;
}
[id=menu] li .about span {
  font-family: "Open Sans", "Gill Sans MT", "Gill Sans", Corbel, Arial, sans-serif;
  font-size: 3em;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
}
[id=menu] li .about span span {
  display: inline-block;
  font-size: 1em;
  margin-left: -0.256410256410256em;
  font-weight: 700;
}
[id=menu] li .registry {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -250px -371px;
  width: 242px;
  height: 151px;
  padding-top: 4.307692307692307em;
}
[lang=fr] [id=menu] li .registry {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -250px -371px;
  width: 242px;
  height: 151px;
}
[id=menu] li .registry span {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -690px -53px;
  width: 152px;
  height: 37px;
  font-size: 0;
}
[lang=fr] [id=menu] li .registry span {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -690px -152px;
  width: 152px;
  height: 37px;
}
[id=menu] li .book {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -414px 0px;
  width: 274px;
  height: 152px;
  padding-top: 4.846153846153846em;
}
[lang=fr] [id=menu] li .book {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -414px 0px;
  width: 274px;
  height: 152px;
}
[id=menu] li .book span {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -202px -676px;
  width: 200px;
  height: 45px;
  font-size: 0;
}
[lang=fr] [id=menu] li .book span {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -690px -105px;
  width: 169px;
  height: 45px;
}
@media (min-width: 37em) {
  [id=menu] {
    height: 0;
  }
  [id=menu] ul {
    top: 50%;
    transform: translateY(-50%);
  }
}
[id=program] .ttl {
  font-size: 1em;
  margin: 9.4375em auto 5em;
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -690px 0px;
  width: 175px;
  height: 51px;
}
[lang=fr] [id=program] .ttl {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -690px 0px;
  width: 174px;
  height: 51px;
}
[id=program] .ttl span {
  display: none;
}
[id=program] .sttl a {
  position: relative;
  color: inherit;
}
[id=program] .sttl a span {
  vertical-align: middle;
}
[id=program] .sttl .pin {
  display: inline-block;
  padding: 0;
  background-color: transparent;
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -690px -92px;
  width: 25px;
  height: 35px;
  margin-left: 0.454545454545455em;
  animation: breath 2s infinite ease-in-out;
}
[lang=fr] [id=program] .sttl .pin {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -786px -53px;
  width: 25px;
  height: 35px;
}
[id=program] .sttl ~ .sttl .pin {
  animation-delay: 0.3s;
}
[id=program] .wrapper {
  max-width: 61.25em;
  margin: 0 auto;
}
[id=program] .wrapper:after {
  clear: both;
  content: "";
  display: table;
}
[id=program] .places,
[id=program] .cloud {
  display: none;
}
[id=program] .content {
  box-sizing: border-box;
  margin-bottom: 1em;
  padding: 0 0.625em;
}
[id=program] .content .intro {
  font-style: italic;
}
[id=program] .content .info {
  text-align: center;
}
[id=program] .content p {
  margin: 1.230769230769231em 0.769230769230769em;
  line-height: 1.230769230769231;
}
[id=program] .content p span {
  display: inline-block;
  padding: 0.625em;
  border: 2px solid #fff;
  font-size: 1.230769230769231em;
  line-height: 1.125;
  font-weight: 600;
  background-color: #000;
}
[id=program] .content button {
  display: block;
  margin: 0 0 1.230769230769231em;
  margin-left: 0.769230769230769em;
  padding-left: 0;
  color: #fff;
  background: none;
  border: 0;
  border-bottom: 2px solid #fff;
}
[id=info] {
  overflow: hidden;
  padding-bottom: 6.25em;
  background-color: #122d64;
}
[id=info] .ttl {
  font-size: 1em;
  margin: 6.75em auto 3.125em;
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: 0px -676px;
  width: 200px;
  height: 50px;
}
[lang=fr] [id=info] .ttl {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -690px -53px;
  width: 94px;
  height: 50px;
}
[id=info] .ttl span {
  display: none;
}
[id=info] .wrapper {
  max-width: 59.125em;
  margin: 0 auto;
}
[id=info] .wrapper:after {
  clear: both;
  content: "";
  display: table;
}
[id=info] .wrapper div {
  position: relative;
  float: left;
  box-sizing: border-box;
  padding: 8.875em 0.625em 0;
}
[id=info] .wrapper div:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  display: block;
}
[id=info] .wrapper div.going:before {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -250px -216px;
  width: 138px;
  height: 114px;
  top: 0.3125em;
  margin-left: -69px;
}
[lang=fr] [id=info] .wrapper div.going:before {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -250px -216px;
  width: 138px;
  height: 114px;
}
[id=info] .wrapper div.staying:before {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -250px -524px;
  width: 210px;
  height: 118px;
  margin-left: -105px;
}
[id=info] .wrapper div.staying:before [lang=fr] {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -250px -524px;
  width: 210px;
  height: 118px;
}
[id=info] .wrapper div.eating:before {
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -494px -371px;
  width: 108px;
  height: 105px;
  top: 0.75em;
  margin-left: -54px;
}
[id=info] .wrapper div.eating:before [lang=fr] {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -494px -371px;
  width: 108px;
  height: 105px;
}
[id=info] .wrapper p,
[id=info] .wrapper ul {
  margin-left: 0.769230769230769em;
}
[id=info] .wrapper .sttl em {
  margin-left: 0.454545454545455em;
}
[id=about] {
  background-color: #e62520;
  padding-bottom: 8.4375em;
}
[id=about] .ttl {
  margin: 0 0.256410256410256em 2.153846153846154em;
  padding-top: 2.692307692307693em;
  font-family: "Open Sans", "Gill Sans MT", "Gill Sans", Corbel, Arial, sans-serif;
  font-size: 2.4375em;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
}
[id=about] .ttl span {
  display: inline-block;
  margin-left: -0.256410256410256em;
  font-weight: 700;
}
[lang=fr] [id=about] .ttl span {
  margin-left: 0;
}
[id=about] .plane {
  display: none;
}
[id=about] .wrapper {
  max-width: 60em;
  margin: 0 auto;
}
[id=about] .wrapper .us {
  position: relative;
}
[id=about] .wrapper .us:after {
  clear: both;
  content: "";
  display: table;
}
[id=about] .wrapper .us .pict {
  display: none;
}
[id=about] .wrapper .us div {
  width: 100%;
  box-sizing: border-box;
  padding: 0 0.625em;
  position: relative;
}
[id=about] .wrapper .us .thomas {
  float: left;
  padding-right: 50%;
}
[id=about] .wrapper .us .thomas:after {
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  height: 100%;
  content: '';
  display: block;
  background: url("/medias/dyn/us.png") no-repeat 0 10%;
}
[id=about] .wrapper .us .thomas p,
[id=about] .wrapper .us .thomas ul {
  margin-left: 0.769230769230769em;
}
[id=about] .wrapper .us .liz {
  padding-left: 50%;
  float: right;
  text-align: right;
}
[id=about] .wrapper .us .liz:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 100%;
  content: '';
  display: block;
  background: url("/medias/dyn/us.png") no-repeat 100% 10%;
}
[id=about] .wrapper .us .liz p,
[id=about] .wrapper .us .liz ul {
  margin-right: 0.769230769230769em;
}
[id=registry] {
  position: relative;
  background-color: #e4e2c6;
}
[id=registry]:before {
  content: '';
  position: absolute;
  top: -2.1875em;
  display: block;
  width: 100%;
  height: 2.1875em;
  background: url("/medias/imgs/assets/registry-triangle.png") repeat-x 50% 0;
  background-size: auto 2.1875em;
}
[id=registry] .wrapper {
  overflow: hidden;
  max-width: 56.25em;
  margin: 0 auto;
  padding: 0 0.9375em 3.75em;
}
[id=registry] .ttl {
  margin: 1.717948717948718em 0 0.256410256410256em;
  font-size: 2.4375em;
  line-height: 1;
  font-weight: 600;
  text-align: center;
  text-transform: uppercase;
}
[id=registry] p {
  color: #000;
  font-size: 0.875em;
  line-height: 1.142857142857143;
  text-align: center;
}
[id=registry] .links {
  margin-top: 2em;
  text-align: center;
}
[id=registry] .links a {
  background-color: #fff;
  box-sizing: border-box;
  display: inline-block;
  height: 8.153846153846153em;
  margin: 0 2.307692307692307em;
  padding: 2.230769230769231em 1.923076923076923em;
  vertical-align: top;
  width: 19.53846153846154em;
}
[id=registry] .links .colleo {
  padding-top: 2.076923076923077em;
}
[id=book] {
  overflow: hidden;
  background-color: #122d64;
  padding-bottom: 3.125em;
}
[id=book] .ttl {
  font-size: 1em;
  margin: 5.9375em auto 2.1875em;
  background-image: url("/medias/imgs/sprite-en.png");
  background-position: -202px -676px;
  width: 200px;
  height: 45px;
}
[lang=fr] [id=book] .ttl {
  background-image: url("/medias/imgs/sprite-fr.png");
  background-position: -690px -105px;
  width: 169px;
  height: 45px;
}
[id=book] .ttl span {
  display: none;
}
[id=book] .wrapper {
  max-width: 59em;
  margin: 0 auto;
  padding: 0 0.625em;
}
[id=book] .wrapper:after {
  clear: both;
  content: "";
  display: table;
}
[id=book] .messages {
  position: relative;
  max-height: 23.875em;
  min-height: 9.375em;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
[id=book] .messages article {
  box-sizing: border-box;
  padding-left: 0.625em;
  padding-right: 0.625em;
  margin-bottom: 0.75em;
  overflow: hidden;
}
[id=book] .messages article.last {
  margin-bottom: 0;
}
[id=book] .messages article.new {
  position: absolute;
  left: 100%;
  width: 100%;
  opacity: 0;
}
[id=book] .messages article > p {
  margin-top: 1.230769230769231em;
}
[id=book] .messages article > p:before,
[id=book] .messages article > p:after {
  content: "'";
}
[id=book] .messages p {
  line-height: 1.307692307692308;
}
[id=book] .messages footer {
  margin-top: -1em;
}
[id=book] .messages footer p {
  font-weight: 600;
  font-size: 0.875em;
  line-height: 1.214285714285714;
}
[id=book] form {
  padding: 0 0.625em;
}
[id=book] form input,
[id=book] form textarea {
  display: block;
  margin: 1.384615384615385em 0;
  border: 0;
  width: 100%;
  height: 3.076923076923077em;
  padding-top: 0.230769230769231em;
  font-size: 0.8125em;
  font-weight: 300;
placeholder()
}
[id=book] form textarea {
  min-height: 14.615384615384615em;
  text-transform: none;
  line-height: 1.538461538461539;
placeholder()
}
[id=book] form button {
  display: block;
  width: 100%;
  height: 2.857142857142857em;
  border: 0;
  font-size: 0.875em;
  line-height: 2.5;
  background-color: #e62520;
  text-align: center;
  text-transform: uppercase;
  color: #fff;
}
.infos [id=main] {
  margin: 0 auto;
  width: 80%;
}
.infos [id=main] .filter button {
  margin-right: 0.4375em;
}
.infos [id=main] .userListing {
  margin: 0;
  padding: 1.875em 0;
}
.infos [id=main] li {
  font-size: 1em;
  border-bottom: 1px solid #fff;
}
.infos [id=main] li:before {
  content: none;
}
.infos [id=main] li p+p:not(.attending) {
  margin-top: -1em;
}
.infos [id=main] .waiting p {
  display: none;
}
.infos [id=main] .waiting .name,
.infos [id=main] .waiting .email {
  display: block;
}
.pictures ul {
  text-align: center;
  font-size: 0em;
}
.pictures li {
  display: inline-block;
  height: 9.375rem;
  width: 9.375rem;
}
.pictures li:before {
  content: none;
}
.pictures li a {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  height: 100%;
  position: relative;
  width: 100%;
  transition: transform 0.1s ease-in-out;
}
.pictures li a:hover,
.pictures li a:focus {
  z-index: 2;
  transform: scale(1.1);
  box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.75);
}
.pictures .viewer {
  height: 100%;
  left: 0;
  position: fixed;
  text-align: center;
  top: 0;
  width: 100%;
  z-index: 10;
  background-color: rgba(0,0,0,0.88);
}
.pictures .viewer header {
  display: none;
}
.pictures .viewer button {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.pictures .viewer button:nth-child(2) {
  left: auto;
  right: 0;
}
.pictures .viewer .wrapper {
  position: relative;
  height: 100%;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
.pictures .viewer span {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.pictures .viewer .bgsmall,
.pictures .viewer .bgfull {
  background-size: cover;
  opacity: 0.2;
}
.pictures .viewer img {
  visibility: hidden;
}
@-moz-keyframes breath {
  0% {
    transform: translateY(0.090909090909091em);
  }
  50% {
    transform: translateY(-0.318181818181818em);
  }
  100% {
    transform: translateY(0.090909090909091em);
  }
}
@-webkit-keyframes breath {
  0% {
    transform: translateY(0.090909090909091em);
  }
  50% {
    transform: translateY(-0.318181818181818em);
  }
  100% {
    transform: translateY(0.090909090909091em);
  }
}
@-o-keyframes breath {
  0% {
    transform: translateY(0.090909090909091em);
  }
  50% {
    transform: translateY(-0.318181818181818em);
  }
  100% {
    transform: translateY(0.090909090909091em);
  }
}
@keyframes breath {
  0% {
    transform: translateY(0.090909090909091em);
  }
  50% {
    transform: translateY(-0.318181818181818em);
  }
  100% {
    transform: translateY(0.090909090909091em);
  }
}
@media (min-width: 35em) {
  [id=register] p.text {
    display: table;
    width: 100%;
  }
  [id=register] p.text label {
    display: table-cell;
    white-space: nowrap;
  }
  [id=register] p.text span {
    display: table-cell;
    width: 100%;
    box-sizing: border-box;
  }
  [id=register] .plusOne p.text span {
    box-sizing: border-box;
    display: inline-block;
    padding-left: 0.625em;
    width: 50%;
  }
  [id=register] .plusOne p.text span:first-child {
    padding-right: 0.625em;
    padding-left: 0;
  }
  header[role="banner"] {
    min-height: 40em;
  }
  header[role="banner"] .plane3 {
    display: block;
    position: absolute;
    right: 10%;
    bottom: -3.5625em;
    background-image: url("/medias/imgs/sprite-en.png");
    background-position: 0px 0px;
    width: 412px;
    height: 214px;
    z-index: 0;
  }
  [lang=fr] header[role="banner"] .plane3 {
    background-image: url("/medias/imgs/sprite-fr.png");
    background-position: 0px 0px;
    width: 412px;
    height: 214px;
  }
  [id=program] .ttl {
    margin-left: 0.625em;
    margin-right: 0;
    position: relative;
  }
  [id=program] .wrapper {
    padding-right: 5em;
  }
  [id=program] .places {
    box-sizing: border-box;
    float: right;
    margin-top: 5.125em;
    margin-bottom: -4em;
    padding-right: 1.25em;
    display: block;
    max-width: 33.625em;
    width: 50%;
  }
  [id=program] .cloud {
    position: absolute;
    right: -5em;
    top: -4em;
    display: block;
  }
  [id=program] .content {
    position: relative;
    float: right;
    width: 50%;
    max-width: 22.1875em;
  }
  [id=program] .content .more {
    overflow: hidden;
  }
  [id=program] .content .more p:first-child {
    margin-top: 0;
  }
  [id=program] .content .more.hidden {
    height: 0;
  }
  [id=program] .content .more.hidden p {
    margin-top: 0;
  }
  [id=info] .wrapper div {
    float: left;
    width: 50%;
    padding-left: 0.9375em;
    padding-right: 0.9375em;
  }
  [id=info] .ttl {
    margin-left: 3.9375em;
  }
  [id=about] .plane {
    position: absolute;
    top: -6.125em;
    right: 0;
    display: block;
  }
  [id=about] .wrapper {
    position: relative;
  }
  [id=about] .wrapper .us .pict {
    display: block;
    margin: -4.375em auto 0;
  }
  [id=about] .wrapper .us .thomas,
  [id=about] .wrapper .us .liz {
    padding: 0 0.625em;
    width: 50%;
    max-width: 15.3125em;
  }
  [id=about] .wrapper .us .thomas:before,
  [id=about] .wrapper .us .liz:before,
  [id=about] .wrapper .us .thomas:after,
  [id=about] .wrapper .us .liz:after {
    content: none;
  }
  [id=book] .ttl {
    margin-left: 0;
    margin-right: 0;
  }
  [id=book] .messages {
    float: left;
    width: 52.96610169491526%;
  }
  [id=book] .messages article {
    padding-left: 0;
    padding-right: 1.25em;
  }
  [id=book] form {
    float: right;
    width: 46.61016949152542%;
    padding: 0;
  }
  [id=book] form .fields {
    margin-left: auto;
    max-width: 21.875em;
  }
}
@media (min-width: 53.125em) {
  header[role="banner"] .links {
    display: block;
  }
  [id=menu] li {
    margin-top: 2.076923076923077em;
    margin-bottom: 2.076923076923077em;
  }
  [id=info] .wrapper div {
    float: left;
    width: 33%;
  }
  [id=about] .wrapper .us .pict {
    position: absolute;
    top: 50%;
    max-width: 48.125%;
    left: 50%;
    margin-left: -24.0625%;
    margin-top: -24.0625%;
  }
}
@media (orientation: landscape) and (max-width: 34.9375em) and (max-height: 34.5em) {
  header[role="banner"] {
    min-height: 26.875em;
  }
  header[role="banner"] div {
    width: 60%;
  }
  .opacity header[role="banner"] div {
    margin-top: -1.25em;
  }
}
@media (min-height: 30em) {
  header[role="banner"] {
    min-height: 36.25em;
  }
  header[role="banner"] div {
    width: auto;
  }
  .login {
    min-height: 36.25em;
  }
  .login [id=main] {
    width: auto;
  }
}
@media (min-resolution: 1.5dppx), (min-resolution: 144dpi), (-webkit-min-device-pixel-ratio: 1.5) {
  [id=menu] li .program {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: 0px -521px;
    width: 246px;
    height: 149px;
    background-size: auto 670px;
  }
  [lang=fr] [id=menu] li .program {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: 0px -521px;
    width: 246px;
    height: 149px;
    background-size: auto 670px;
  }
  [id=menu] li .program span {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -413px -305px;
    width: 176px;
    height: 51px;
    background-size: auto 670px;
  }
  [lang=fr] [id=menu] li .program span {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -453px -521px;
    width: 190px;
    height: 51px;
    background-size: auto 670px;
  }
  [id=menu] li .info {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: 0px -369px;
    width: 248px;
    height: 151px;
    background-size: auto 670px;
  }
  [lang=fr] [id=menu] li .info {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -413px -153px;
    width: 248px;
    height: 151px;
    background-size: auto 670px;
  }
  [id=menu] li .info span {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -453px -521px;
    width: 200px;
    height: 50px;
    background-size: auto 670px;
  }
  [lang=fr] [id=menu] li .info span {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -532px -305px;
    width: 92px;
    height: 49px;
    background-size: auto 670px;
  }
  [id=menu] li .about {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: 0px -215px;
    width: 248px;
    height: 153px;
    background-size: auto 670px;
  }
  [lang=fr] [id=menu] li .about {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: 0px -215px;
    width: 248px;
    height: 153px;
    background-size: auto 670px;
  }
  [id=menu] li .registry {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -413px -153px;
    width: 242px;
    height: 151px;
    background-size: auto 670px;
  }
  [lang=fr] [id=menu] li .registry {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -247px -369px;
    width: 242px;
    height: 151px;
    background-size: auto 670px;
  }
  [id=menu] li .registry span {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -249px -330px;
    width: 152px;
    height: 37px;
    background-size: auto 670px;
  }
  [lang=fr] [id=menu] li .registry span {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -249px -330px;
    width: 152px;
    height: 37px;
    background-size: auto 670px;
  }
  [id=menu] li .book {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -413px 0px;
    width: 274px;
    height: 152px;
    background-size: auto 670px;
  }
  [lang=fr] [id=menu] li .book {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -413px 0px;
    width: 274px;
    height: 152px;
    background-size: auto 670px;
  }
  [id=menu] li .book span {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -453px -572px;
    width: 200px;
    height: 45px;
    background-size: auto 670px;
  }
  [lang=fr] [id=menu] li .book span {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -453px -573px;
    width: 170px;
    height: 46px;
    background-size: auto 670px;
  }
  header[role="banner"] .plane3 {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: 0px 0px;
    width: 412px;
    height: 214px;
    background-size: auto 670px;
  }
  [lang=fr] header[role="banner"] .plane3 {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: 0px 0px;
    width: 412px;
    height: 214px;
    background-size: auto 670px;
  }
  [id=program] .ttl {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -413px -305px;
    width: 176px;
    height: 51px;
    background-size: auto 670px;
  }
  [lang=fr] [id=program] .ttl {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -453px -521px;
    width: 190px;
    height: 51px;
    background-size: auto 670px;
  }
  [id=program] .sttl .pin {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -656px -153px;
    width: 25px;
    height: 35px;
    background-size: auto 670px;
  }
  [lang=fr] [id=program] .sttl .pin {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -662px -153px;
    width: 25px;
    height: 35px;
    background-size: auto 670px;
  }
  [id=info] .ttl {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -453px -521px;
    width: 200px;
    height: 50px;
    background-size: auto 670px;
  }
  [lang=fr] [id=info] .ttl {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -532px -305px;
    width: 92px;
    height: 49px;
    background-size: auto 670px;
  }
  [id=info] .wrapper div.going:before {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -249px -215px;
    width: 138px;
    height: 114px;
    background-size: auto 670px;
  }
  [lang=fr] [id=info] .wrapper div.going:before {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -249px -215px;
    width: 138px;
    height: 114px;
    background-size: auto 670px;
  }
  [id=info] .wrapper div.staying:before {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -247px -521px;
    width: 205px;
    height: 115px;
    background-size: auto 670px;
  }
  [id=info] .wrapper div.staying:before [lang=fr] {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -247px -521px;
    width: 205px;
    height: 115px;
    background-size: auto 670px;
  }
  [id=info] .wrapper div.eating:before {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -496px -369px;
    width: 108px;
    height: 105px;
    background-size: auto 670px;
  }
  [id=info] .wrapper div.eating:before [lang=fr] {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -490px -369px;
    width: 108px;
    height: 105px;
    background-size: auto 670px;
  }
  [id=book] .ttl {
    background-image: url("/medias/imgs/sprite2x-en.png");
    background-position: -453px -572px;
    width: 200px;
    height: 45px;
    background-size: auto 670px;
  }
  [lang=fr] [id=book] .ttl {
    background-image: url("/medias/imgs/sprite2x-fr.png");
    background-position: -453px -573px;
    width: 170px;
    height: 46px;
    background-size: auto 670px;
  }
}
