@import url(https://fonts.googleapis.com/css?family=Open+Sans);

html, body {
	height: 100%;
	font-family: 'Open Sans'
}
body {
	background-image: url(../assets/fd-noel.jpg) !important;
    background-color: #eab5b5 !important;
    background-repeat: repeat !important;
    background-attachment: fixed !important;
    margin-top: 0px;
}
.instant-gagnant {
	color:#E60000;
	font-weight:bold;
  animation: bounceIn 1.5s;
}
@keyframes bounceIn {
  0% {
    transform: scale(0.1);
    opacity: 0;
  }
  60% {
    transform: scale(1.2);
    opacity: 1;
  }
  100% {
    transform: scale(1);
  }
}
section#bonjour{
	padding:20px;
	margin:0 auto;
	width:90%;
	color:#fff;
	position:relative;
	text-align:center;
	z-index:9999
}
section#bonjour img{
 	margin:0 auto;
	max-width:35%;
	max-height:35%;
	position:relative;
	z-index:9999
}

.center-wrap {
	position: relative;
	top: calc(10% - 100px);
	left: calc(50% - 150px);
	width: 250px;
	height: 200px;
	z-index:9999
}
.message-oups{
	font-family: 'Open Sans';
	font-size: 22px;
	text-align:center;
	animation:blinkingText 1.5s infinite;
}

.conteneur-oups{
	color:#fff;
	text-align:center;
	padding-bottom:15px;
}

@keyframes blinkingText{
    0%{     color: #fff;    }
    49%{    color: #79150d; }
    50%{    color: #E60000; }
    100%{    color: #fff;  }
}
/************** EFFETS FONDS *********/
.bubulle-vodafone{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index:1;
}
.bubulle-vodafone li{
    position: absolute;
    display: block;
    list-style: none;
    width: 20px;
    height: 20px;
    background: rgba(255, 255, 255, 0.2);
    animation: animate 25s linear infinite;
    bottom: -150px;
}
.bubulle-vodafone li:nth-child(1){
    left: 25%;
    width: 80px;
    height: 80px;
    animation-delay: 0s;
}
.bubulle-vodafone li:nth-child(2){
    left: 10%;
    width: 20px;
    height: 20px;
    animation-delay: 2s;
    animation-duration: 12s;
}
.bubulle-vodafone li:nth-child(3){
    left: 80%;
    width: 20px;
    height: 20px;
    animation-delay: 4s;
}
.bubulle-vodafone li:nth-child(4){
    left: 40%;
    width: 60px;
    height: 60px;
    animation-delay: 0s;
    animation-duration: 18s;
}
.bubulle-vodafone li:nth-child(5){
    left: 65%;
    width: 20px;
    height: 20px;
    animation-delay: 0s;
}
.bubulle-vodafone li:nth-child(6){
    left: 75%;
    width: 110px;
    height: 110px;
    animation-delay: 3s;
}
.bubulle-vodafone li:nth-child(7){
    left: 35%;
    width: 150px;
    height: 150px;
    animation-delay: 7s;
}
.bubulle-vodafone li:nth-child(8){
    left: 50%;
    width: 25px;
    height: 25px;
    animation-delay: 15s;
    animation-duration: 45s;
}
.bubulle-vodafone li:nth-child(9){
    left: 20%;
    width: 15px;
    height: 15px;
    animation-delay: 2s;
    animation-duration: 35s;
}
.bubulle-vodafone li:nth-child(10){
    left: 85%;
    width: 150px;
    height: 150px;
    animation-delay: 0s;
    animation-duration: 11s;
}
.bubulle-vodafone li:nth-child(11){
    left: 85%;
    width: 50px;
    height: 50px;
    animation-delay: 0s;
    animation-duration: 66s;
}
.bubulle-vodafone li:nth-child(12){
    left: 55%;
    width: 55px;
    height: 55px;
    animation-delay: 0s;
    animation-duration: 7s;
}
.bubulle-vodafone li:nth-child(13){
    left: 95%;
    width: 55px;
    height: 55px;
    animation-delay: 0s;
    animation-duration: 38s;
}

@keyframes animate {

    0%{
        transform: translateY(0) rotate(0deg);
        opacity: 1;
        border-radius: 0;
    }

    100%{
        transform: translateY(-1000px) rotate(720deg);
        opacity: 0;
        border-radius: 50%;
    }

}
.bg {
  animation:slide 8s ease-in-out infinite alternate;
  background-image: linear-gradient(-60deg, #820000 50%, #e60000 50%);
  bottom:0;
  left:-50%;
  opacity:.8;
  position:fixed;
  right:-50%;
  top:0;
  z-index:-1;
}

.bg2 {
  animation-direction:alternate-reverse;
  animation-duration:20s;
}

.bg3 {
  animation-duration:12s;
}
.bga {
  animation:slide 8s ease-in-out infinite alternate;
  background-image: linear-gradient(-60deg, #2b292b 50%, #3a3a3a 50%);
  bottom:0;
  left:-50%;
  opacity:.8;
  position:fixed;
  right:-50%;
  top:0;
  z-index:-1;
}

.bgb {
  animation-direction:alternate-reverse;
  animation-duration:20s;
}

.bgc {
  animation-duration:12s;
}
@keyframes slide {
  0% {
    transform:translateX(-25%);
  }
  100% {
    transform:translateX(25%);
  }
}

/************** EFFETS BOUTONS *********/
button {
	font-size: 18px;
	color:#000;
	    z-index: 9999;
	    	font-family: 'Open Sans';
	text-decoration: none;
    position: relative;
    display: block;
    border: 4px solid rgba(255,255,255,.5); 
    text-transform: uppercase;
    letter-spacing: 0.1rem;
    padding: 20px 15px;
    background:#fff;
    text-align: center;
    max-width: 420px;
    min-width: 335px;
    cursor: pointer;
    overflow: hidden;
    border-radius: 10px 10px 10px 10px;
    -moz-border-radius: 10px 10px 10px 10px;
    -webkit-border-radius: 10px 10px 10px 10px;
    -webkit-transition: border 1s cubic-bezier(0.19,1,.22,1),color .6s cubic-bezier(0.19,1,.22,1);
    transition: border 1s cubic-bezier(0.19,1,.22,1), color .6s cubic-bezier(0.19,1,.22,1), background 5s cubic-bezier(0.19,1,.22,1);
}
.bouton{
	margin-left:-20px
}
.checkbox a span {
    position: absolute;
    margin-top: -75px;
    margin-left: -35px;
    color: #fff;
	width:150px;
    background: rgba(0,0,0,.8);
    padding: 8px;
    border-radius: 3px;
    box-shadow: 0 0 2px rgba(0,0,0,.5);
    transform: scale(0) rotate(-12deg);
    -webkit-transition: all .25s;
    -moz-transition: all .25s;
    -ms-transition: all .25s;
    -o-transition: all .25s;
    transition: all .25s;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px rgba(0,0,0,.5);
    -moz-box-shadow: 0 0 2px rgba(0,0,0,.5);
    box-shadow: 0 0 2px rgba(0,0,0,.5);
    font-size: 8px;
    z-index:99999;
}
.checkbox a:hover, .checkbox a:focus{
     background:rgba(0,0,0,.4);
     box-shadow:0 1px 0 rgba(255,255,255,.7);
}
.checkbox a span::before {
    content: '';
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
    position: absolute;
    top: 80px;
    left: -9px;
    width: 0;
    height: 0;
    border-bottom: 6px solid rgba(0,0,0,.7);
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    transform: rotate(-90deg);
}
.checkbox a:hover span, .checkbox a:focus span{
     transform:scale(1) rotate(0);        
}

/************** FORMULAIRE *********/
.wrap-fixe-tel{
	position: relative;
	bottom: 40px;
	z-index: 9999
}
.wrap-fixe-check{
	position: relative;
	bottom: 40px;
	z-index: 9999
}
.wrap-fixe-bt{
	position: relative;
	bottom: -20px;
	z-index: 9999
}
.wrap {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-right: -50%;
	transform: translate(-50%, -50%) scale(2,2);
}

input {
	display: none;
	z-index: 9999
}

label.check {
	font-size: 12px;
	color: #fff;
text-shadow: 1px 1px 2px rgba(150, 150, 150, 1);

	display: inline-block;
	padding: 0 0 0 2em;
	cursor: pointer;
	z-index: 9999
}
label.check a{
color:#fff;
border-bottom:1px dashed #e60000;
text-decoration: none
}
label.check:before {
	content: '';
	display: inline-block;
	background: #e60000;
	position: absolute;
	left: -8px;
	top: 2px;
	height: 18px;
	width: 18px;
	margin-right: 10px;
	border-radius: 80%;
	box-shadow: 0px 1px 0 0 rgba(0, 0, 0, .2);
	box-sizing: border-box;
	border: 10px solid #fff;
	transition: border .3s ease;
}

input:checked + label.check:before {
	border-color: #fff;
	border-width: 3px;
}
input + label.check {
	transition: color .7s ease;
}
input:checked + label.check {
	color: #fff;
}
input:checked + label.check a {
	color: #fff;
}
label{
	display: block;	
}
input.pseudo{
	display: block;
    position: relative;
    margin: 0 auto;
    margin-top: 50px;
	width: 500px;	
	border: none;
	border-radius: 20px;
	outline: none;
	padding: 10px;
	font-family: 'Open Sans', cursive;
	font-size: 1em;
	color: #676767;
	transition: border 0.5s;
	-webkit-transition: border 0.5s;
	-moz-transition: border 0.5s;
	-o-transition: border 0.5s;
	border: solid 2px #c44a40;	
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
input.pseudo:focus{
	border: solid 3px #7d160d;	
}
input.email{
	display: block;
    position: relative;
    margin: 0 auto;
    margin-top: 10px;
	width: 500px;	
	border: none;
	border-radius: 20px;
	outline: none;
	padding: 10px;
	font-family: 'Open Sans', cursive;
	font-size: 1em;
	color: #676767;
	transition: border 0.5s;
	-webkit-transition: border 0.5s;
	-moz-transition: border 0.5s;
	-o-transition: border 0.5s;
	border: solid 2px #c44a40;	
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
input.email:focus{
	border: solid 3px #7d160d;	
}
input.msisdn{
	display: block;
    position: relative;
    margin: 0 auto;
    margin-top: 10px;
	    margin-bottom: 30px;
	width: 500px;	
	border: none;
	border-radius: 20px;
	outline: none;
	padding: 10px;
	font-family: 'Open Sans', cursive;
	font-size: 1em;
	color: #676767;
	transition: border 0.5s;
	-webkit-transition: border 0.5s;
	-moz-transition: border 0.5s;
	-o-transition: border 0.5s;
	border: solid 2px #c44a40;	
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
input.msisdn:focus{
	border: solid 3px #7d160d;	
}
h1 { font-size: 72px; }

.linear-wipe {
  text-align: center;
  
  background: linear-gradient(to right, #FFF 20%, #e60000 40%, #e60000 60%, #FFF 80%);
  background-size: 200% auto;
  
  color: #000;
  background-clip: text;
  text-fill-color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  
  animation: shine 1s linear infinite;
  @keyframes shine {
    to {
      background-position: 200% center;
    }
  }
}
h2 {
  height: 100px;
}

h2 span {
  position: relative;
  top: 20px;
  display: inline-block;
  animation: bounce .3s ease infinite alternate;
  font-size: 50px;
  color: #FFF;
}

h1 span:nth-child(2) { animation-delay: .1s; }
h1 span:nth-child(3) { animation-delay: .2s; }
h1 span:nth-child(4) { animation-delay: .3s; }
h1 span:nth-child(5) { animation-delay: .4s; }
h1 span:nth-child(6) { animation-delay: .5s; }
h1 span:nth-child(7) { animation-delay: .6s; }
h1 span:nth-child(8) { animation-delay: .7s; }

@keyframes bounce {
  100% {
    top: -20px;
    text-shadow: 0 1px 0 #CCC,
                 0 2px 0 #CCC,
                 0 3px 0 #CCC,
                 0 4px 0 #CCC,
                 0 5px 0 #CCC,
                 0 6px 0 #CCC,
                 0 7px 0 #CCC,
                 0 8px 0 #CCC,
                 0 9px 0 #CCC,
                 0 50px 25px rgba(0, 0, 0, .2);
  }
}

#centre{
  color:#fff;
  text-align:center;
  position:relative;
  margin: 0 auto;
  width: 600px;
}

.gain{
	font-size: 20px;
}