/* .grecaptcha-badge {
  right:-500px !important;
} */
/* DIMENSIONS ***************************************************************************************************************/
/* Site optimisé pour iframe de 1300px */
/* COLORS *****************************************************************************************************************/
.ac-color-primary {
  color: #1e9669;
}
/* FONTS *****************************************************************************************************************/
/* @font-face {
    font-family: 'Nexa Rust Sans';
    src: url('../font/NexaRustSans-Black.woff2') format('woff2'),
        url('../font/NexaRustSans-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
} */
/* @font-face {
    font-family: 'helvetica_neue_lt_promdcn';
    src: url('../font/helveticaneueltpromdcn-webfont.woff2') format('woff2'),
         url('../font/helveticaneueltpromdcn-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'gothambook';
    src: url('../font/gotham_book-webfont.woff2') format('woff2'),
         url('../font/gotham_book-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

} */
p {
  color: #778186;
  font-family: 'Open Sans', sans-serif;
}
a {
  position: relative;
}
a::after {
  content: '';
  width: 0;
  height: 1px;
  position: absolute;
  bottom: 2px;
  left: 0;
  background-color: #778186;
  transition: all 0.5s;
}
a:hover {
  text-decoration: none;
}
a:hover::after {
  width: 100%;
}
sup {
  font-size: 50%;
  top: -1em;
}
/* CARD *****************************************************************************************************************/
.ac-card {
  background-color: #ffffff;
  /* background: #7AEEFF;
  background: linear-gradient(0deg,rgba(245, 245, 245, 1) 0%, rgba(255, 255, 255, 1) 50%);
  border-radius: 0 0 10px 10px; */
  padding-top: 30px;
  padding-bottom: 25px;
  position: relative;
  border-radius: 30px;
}
.ac-card .ac-inner-card {
  padding: 25px;
  padding-top: 10px;
}
.ac-card .ac-hr {
  border-top: 1px solid #ffffff;
}
/* @media (min-width:@tablet-breakpoint) {
  .ac-card {
    margin-bottom: 30px !important;
  }
}

@media (min-width:@desktop-breakpoint) {
  .ac-card {
    margin-bottom: 40px !important;
    min-height:570px;
  }
} */
/* FORM *****************************************************************************************************************/
.ac-form {
  /* Animation sur le focus des input */
  /* .uk-select, .select2-selection {
    height:30px !important;
    line-height: 30px;
  } */
  /* Upload fichier*/
  /* .input-file {
    display:none;
  } */
  /* États de validation */
}
.ac-form .ac-input-group {
  position: relative;
}
.ac-form .ac-input,
.ac-form .uk-select,
.ac-form .select2 {
  height: 40px;
  background-color: #ffffff;
  border: 2px solid #e9ecef;
  color: #778186;
  font-size: 13px;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  border-radius: 8px;
  text-align: left;
  transition: all 0.5s;
}
.ac-form .ac-input::placeholder,
.ac-form .uk-select::placeholder,
.ac-form .select2::placeholder {
  color: #778186;
  transition: color 0.5s;
}
.ac-form .ac-input:focus,
.ac-form .uk-select:focus,
.ac-form .select2:focus {
  /* transform: translateY(-2px);
      box-shadow: 0 8px 24px rgba(255,0,110,.2); */
  border-color: #1e9669;
}
.ac-form .ac-input:focus::placeholder,
.ac-form .uk-select:focus::placeholder,
.ac-form .select2:focus::placeholder {
  color: transparent;
}
.ac-form .select2-selection__rendered {
  height: 40px !important;
  line-height: 36px !important;
}
.ac-form .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #778186;
  padding-left: 15px;
}
.ac-form .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 35px;
}
.ac-form .select2-container--default .select2-selection--single {
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0;
}
.ac-form .uk-checkbox {
  background-color: #ffffff;
  border: 2px solid #e9ecef;
  width: 24px;
  height: 24px;
  border-radius: 8px;
  transition: all 0.5s;
}
.ac-form .uk-checkbox:checked {
  background-color: #1e9669;
  border-color: #778186;
  transform: rotate(-5deg);
  /* &::after {
        content:'✓';
        position: absolute;
        top:50%;
        left:50%;
        transform: translate(-50%, -50%) scale(1);
        color:#ffffff;
        font-weight: bold;
        font-size:16px;
        animation: checkPop .4s cubic-bezier(.34, 1.56,.64,1);
      } */
}
@keyframes checkPop {
  0% {
    transform: translate(-50%, -50%) scale(0);
  }
  50% {
    transform: translate(-50%, -50%) scale(1.2);
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
  }
}
.ac-form .ac-radio:checked {
  background-color: #fbb30a;
  border: 1px solid #fbb30a;
}
.ac-form .ac-input-date {
  height: 30px;
}
.ac-form .ac-text-date-naissance,
.ac-form .ac-text-date-prestation {
  background-color: #ffffff;
  padding-left: 15px;
  border: 2px solid #e5e7eb;
}
.ac-form .ac-text-date-naissance p,
.ac-form .ac-text-date-prestation p {
  color: #778186;
  font-size: 14px;
  line-height: 36px;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
}
.ac-form .ac-input-date {
  padding-top: 3px;
  padding-bottom: 3px;
  height: 40px !important;
}
.ac-form .ac-text-date-naissance,
.ac-form .ac-text-date-prestation {
  border-radius: 16px 0 0 16px !important;
  border-right-width: 0 !important;
}
.ac-form .ac-form-margin-bottom {
  padding-bottom: 5px;
}
.ac-form .ac-label .uk-checkbox {
  margin-top: 0;
}
.ac-form .ac-label p {
  font-family: 'Open Sans', sans-serif;
  font-size: 12px;
  line-height: 14px;
  font-weight: 400;
  color: #778186;
}
.ac-form .ac-label p a {
  text-decoration: none;
  font-weight: 600;
  color: #778186;
}
.ac-form .ac-label p a::after {
  width: 100%;
}
.ac-form .ac-upload-zone {
  border: 2px dashed #e5e7eb;
  background-color: #ffffff;
  color: #778186;
  border-radius: 16px;
  padding: 30px;
  text-align: center;
  transition: all 0.5s;
}
.ac-form .ac-upload-zone .ac-upload-text {
  font-size: 12px;
  line-height: 14px;
  font-weight: 500;
  margin-bottom: 0;
  font-family: 'Poppins', sans-serif;
  color: #1e9669;
}
.ac-form .ac-upload-zone .ac-upload-indication {
  margin-top: 5px;
  margin-bottom: 0;
  opacity: 0.5;
}
.ac-form .ac-upload-zone:hover,
.ac-form .ac-upload-zonedragover {
  border-color: #1e9669;
}
.ac-form .ac-upload-zone.hidden {
  display: none !important;
}
.ac-form .ac-upload-zone.ac-input-error {
  border-color: #e74c3c !important;
  border-style: solid;
  background-color: #fdf2f2 !important;
}
.ac-form .ac-file-preview {
  display: none;
  border: 2px solid #778186;
  background-color: #ffffff;
  color: #778186;
  border-radius: 16px;
  padding: 30px;
  text-align: center;
  animation: slideIn 0.3s ease;
}
.ac-form .ac-file-preview.show {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ac-form .ac-file-preview .ac-file-name-text {
  font-size: 14px;
}
.ac-form .ac-file-preview .ac-file-size {
  min-width: 90px;
}
.ac-form .ac-file-preview .remove-file {
  background: #778186;
  color: white;
  border: none;
  border-radius: 50%;
  width: 35px;
  height: 35px;
  cursor: pointer;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  font-weight: bold;
  flex-shrink: 0;
}
.ac-form .ac-file-preview .remove-file:hover {
  transform: scale(1.1);
}
@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.ac-form .ac-input-error {
  border-color: #c30f19 !important;
  background-color: #fdf2f2 !important;
}
.ac-form .ac-input-valid {
  border-color: #778186 !important;
}
.ac-form .ac-error-form {
  color: #c30f19 !important;
  font-size: 11px !important;
  line-height: 13px;
  text-align: left;
  margin-top: 2px;
  margin-bottom: 2px;
  padding-left: 10px;
}
.ac-form .ac-label .ac-error-form {
  padding-left: 0;
}
.ac-form #ac-error-form-reglement {
  margin-top: 0;
  margin-bottom: 2px;
  padding-left: 0;
}
.ac-form .ac-input-file {
  background-color: #ffffff;
  color: #1e9669;
  height: 35px;
  line-height: 35px;
  display: block;
  text-transform: inherit;
  text-align: center;
}
.ac-form .ac-input-file-selected {
  background-color: #1e9669;
  color: #ffffff;
  height: 37px !important;
  line-height: 37px;
  font-size: 11px;
  display: block;
  text-transform: inherit;
}
.ac-form .input-file {
  display: none;
}
.uk-modal-body .ac-error-form {
  text-align: center;
}
.ac-input-date::-webkit-datetime-edit {
  padding-top: 3px;
  padding-bottom: 3px;
}
/* @media (max-width: @tablet-breakpoint) {
  #date-prestation {
    border-top-width: 0 !important;
    border-left-width: 1px !important;
  }
  
  .ac-form {
    .ac-text-date-prestation {
      border-bottom-width: 0 !important;
      border-right-width: 1px !important;
    }
  }  
} */
@media (max-width: 640px) {
  /* .ac-input-date {
    border-radius: 0 0 2px 2px !important;
  } */
  .ac-text-date-naissance,
  .ac-text-date-prestation {
    border-radius: 2px 2px 0 0 !important;
  }
  .ac-form-margin-right-mobile {
    padding-right: 5px;
  }
}
@media (min-width: 640px) AND (max-width: 960px) {
  .ac-form-margin-right-mobile {
    padding-right: 5px;
  }
}
@media (max-width: 960px) {
  .ac-form .ac-file-preview {
    padding: 15px;
  }
  .ac-form .ac-file-preview.show {
    flex-direction: column;
    gap: 5px;
  }
  .ac-form .ac-file-preview.show p {
    margin-top: 5px;
    margin-bottom: 0;
  }
}
@media (min-width: 960px) {
  .ac-form-margin-right {
    padding-right: 5px;
  }
}
/* BOUTONS *****************************************************************************************************************/
.ac-button {
  font-family: 'Poppins', sans-serif;
  font-size: 18px;
  line-height: 20px;
  font-weight: 700;
  padding: 15px 55px 15px;
  border-radius: 30px 0 30px 0;
  text-transform: uppercase;
  transition: all 0.5s;
}
.ac-button-primary {
  background: linear-gradient(90deg, #ff3035, #c30f19);
  color: #ffffff;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  animation: gradientShift 3s ease infinite;
  overflow: hidden;
  /* &::before {
    content:'';
    position: absolute;
    top:50%;
    left:50%;
    width:0;
    height:0;
    border-radius:50%;
    background: rgba(255,255,255,.3);
    transform: translate(-50%, -50%);
    transition:all .5s; 
  } */
}
.ac-button-primary:hover:not(:disabled) {
  transform: scale(1.02);
  /* &::before {
      width: 300px;
      height: 300px;
    } */
}
.ac-button-primary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  animation: none;
}
@keyframes gradientShift {
  0%,
  100% {
    background-position: 0 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}
.ac-button-connection {
  border-radius: 8px;
  background-color: #1e9669;
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #ffffff;
  height: 38px;
  text-transform: none;
  transition: all 0.5s;
}
.ac-button-connection:hover:not(:disabled) {
  background-color: #c30f19;
}
.ac-connection-popin,
.ac-connection-popin a {
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  line-height: 18px;
  color: #778186;
  font-weight: 400;
  animation: all 0.5s;
}
.ac-connection-popin span,
.ac-connection-popin a span {
  font-weight: 600;
  line-height: 17px;
}
.ac-connection-popin a::after {
  width: 100%;
}
.ac-button-secondary {
  background: #ffd100;
  color: #636469;
}
.ac-button-secondary:hover {
  background: #1e9669;
  color: #ffffff;
}
.ac-button-small {
  font-size: 16px;
  line-height: 18px;
  padding: 7px 25px;
}
.ac-button-banner-cookies {
  font-size: 14px;
  background-color: #f0f0f0;
  color: #778186;
  padding: 3px 15px;
}
.ac-button-banner-cookies:hover {
  background-color: #778186;
  color: #f0f0f0;
}
.ac-button[disabled],
button[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}
.uk-table tr {
  border-bottom: 1px solid #1e9669;
  font-family: 'Poppins', sans-serif;
  color: #778186;
  font-size: 18px;
  line-height: 20px;
}
.uk-table tr.ac-table-highlight {
  color: #ffd100;
}
.uk-table td {
  padding: 3px;
}
.uk-table .ac-table-place {
  text-align: right;
}
.uk-table .ac-table-joueur {
  text-align: left;
  text-transform: capitalize;
}
.uk-table .ac-table-score {
  text-align: right;
}
@media (max-width: 640px) {
  .ac-button-secondary {
    padding: 15px 20px;
  }
  .ac-button-default {
    font-size: 20px;
    line-height: 22px;
  }
  .ac-button-small {
    padding: 6px 25px 6px;
  }
}
@media (hover: none) {
  .ac-button-primary:active:not(:disabled) {
    transform: translateY(-4px) scale(1.02);
    box-shadow: 0 8px 24px rgba(255, 0, 110, 0.2);
  }
  .ac-button-primary:active:not(:disabled)::before {
    width: 300px;
    height: 300px;
  }
}
/* BODY *****************************************************************************************************************/
/* @media (min-width:@smartphone-breakpoint) {
  body {
    background: url('../webroot/img/bg.jpg') top center no-repeat #ffffff;
  }
} */
/* HEADER *****************************************************************************************************************/
@media (max-width: 640px) {
  .ac-header,
  .ac-content-section {
    padding: 0;
  }
  .ac-header .uk-container,
  .ac-content-section .uk-container {
    padding: 0;
  }
}
@media (min-width: 640px) {
  .ac-header {
    background: url('../webroot/img/bg-header.jpg') bottom center no-repeat;
    padding-top: 25px;
    padding-bottom: 0;
  }
}
/* CONTENT SECTION *****************************************************************************************************************/
.ac-content-section {
  background: url('../img/bg.jpg') top center no-repeat #004822;
  max-width: 1300px;
  margin: auto;
}
.ac-content-section .ac-text-lead {
  font-family: 'Poppins', sans-serif;
  text-transform: uppercase;
  font-size: 25px;
  line-height: 27px;
  font-weight: 500;
  color: #ffffff;
  margin-top: 0;
  margin-bottom: 5px;
}
.ac-content-section .ac-text-lead-big {
  font-size: 30px;
  line-height: 32px;
}
.ac-content-section .ac-text-shadow {
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.75);
}
.ac-content-section h2 {
  font-family: 'Poppins', sans-serif;
  color: #1e9669;
  font-size: 30px;
  line-height: 32px;
  text-transform: uppercase;
  font-weight: 700;
  /* span {
      font-weight: 900;
      font-size: 25px;
      line-height: 27px;
    } */
}
.ac-content-section .ac-titre-baseline {
  font-family: 'Poppins', sans-serif;
  color: #778186;
  font-size: 22px;
  line-height: 24px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.ac-content-section .ac-title-connection {
  font-family: 'Poppins', sans-serif;
  color: #c30f19;
  font-size: 16px;
  line-height: 18px;
  font-weight: 700;
  text-transform: uppercase;
}
.ac-content-section hr {
  margin-top: 0;
  margin-bottom: 0;
  border-color: #e9ecef;
}
.ac-content-section h3 {
  font-family: 'Poppins', sans-serif;
  color: #1e9669;
  font-size: 18px;
  line-height: 20px;
  font-weight: 500;
}
.ac-content-section .uk-text-small {
  color: #778186;
  font-size: 11px;
  line-height: 13px;
}
.ac-content-section .uk-alert {
  background-color: #fdf2f2;
  padding: 5px;
  margin-top: 10px;
  margin-bottom: 5px;
  padding-right: 20px;
}
.ac-content-section .uk-alert p {
  color: #e74c3c;
  font-size: 12px;
  line-height: 14px;
  text-align: left;
}
.ac-content-section .uk-alert .uk-alert-close {
  top: 2px;
  right: 2px;
}
.ac-content-section .uk-alert .uk-alert-close svg {
  color: #3083bf;
}
.ac-content-section .uk-alert .uk-alert-close:after {
  width: 0;
}
.ac-content-section #ac-bottom p {
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  color: #1e9669;
}
.ac-content-section #ac-bottom .uk-icon-button {
  background-color: #000000;
  color: #ffffff;
  border-radius: 15px;
  transition: all 0.5s;
}
.ac-content-section #ac-bottom .uk-icon-button:hover {
  background-color: #ffd100;
}
.ac-content-section #ac-bottom #ac-icon-instagram {
  border-bottom-right-radius: 3px;
}
.ac-content-section #ac-bottom #ac-icon-facebook {
  border-bottom-left-radius: 3px;
}
#end .uk-modal-dialog {
  max-width: 960px !important;
}
#end .uk-modal-dialog h2 {
  font-size: 26px;
  line-height: 28px;
  text-transform: inherit;
  font-weight: 900;
}
#end .uk-modal-dialog p {
  color: #778186;
  font-size: 18px;
  line-height: 20px;
}
#end .uk-modal-dialog p span {
  font-weight: 600;
}
#end .uk-modal-dialog p a {
  text-decoration: underline;
}
#end .uk-modal-dialog .ac-button-primary {
  color: #ffffff;
}
@media (max-width: 960px) {
  .ac-content-section .uk-container {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 640px) {
  .ac-content-section {
    background: url('../img/bg-mobile.jpg') top center no-repeat #a3d2bb;
    padding-bottom: 2px;
  }
  .ac-content-section .ac-card {
    padding: 20px 10px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
  .ac-content-section .ac-titre-baseline {
    margin-bottom: 5px !important;
  }
  .ac-content-section .ac-inner-card {
    padding: 15px;
    padding-top: 10px;
  }
  .ac-content-section #ac-dotations-date {
    font-size: 16px;
    line-height: 18px;
  }
  .ac-content-section #ac-dotations-text {
    font-size: 20px;
    line-height: 22px;
  }
  .ac-content-section #ac-bottom #ac-col-logo-client {
    padding-left: 0;
  }
  .ac-content-section h2 {
    font-size: 23px;
    line-height: 25px;
  }
  .ac-content-section h3 {
    font-size: 16px;
    line-height: 18px;
  }
  #end .uk-modal-dialog h2 {
    font-size: 22px;
    line-height: 24px;
  }
  #end .uk-modal-dialog p {
    font-size: 14px;
    line-height: 16px;
  }
  #end .uk-modal-dialog .ac-button-primary {
    font-size: 20px;
    line-height: 22px;
  }
}
@media (max-width: 960px) {
  .ac-content-section .ac-dotations-column {
    max-width: 600px;
    margin: auto;
  }
}
/* VERIFICATION *****************************************************************************************************************/
#verification {
  width: 100%;
  margin: auto;
}
#verification h2 {
  font-size: 28px;
  line-height: 30px;
}
#verification .ac-titre-baseline {
  font-size: 19px;
  line-height: 21px;
}
#verification .ac-inner-card {
  padding-bottom: 0;
}
#verification .ac-input-surface {
  padding: 15px 10px;
  max-width: 45px;
}
#verification .ac-text-intro {
  font-family: 'Open Sans', sans-serif;
  font-size: 12px;
  line-height: 14px;
  font-weight: 500;
}
#verification .ac-step-verification {
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  line-height: 16px;
  color: #1e9669;
  font-weight: 700;
  margin-bottom: 5px;
}
#verification .ac-step-verification p {
  color: #1e9669;
}
#verification .ac-step-verification .step {
  background: linear-gradient(90deg, #ff3035, #c30f19);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  color: #ffffff;
  text-align: center;
  line-height: 24px;
  margin-right: 10px;
  font-family: 'Poppins', sans-serif;
}
#verification .ac-indication {
  margin: 5px 0 0 15px;
  color: #778186;
  opacity: 0.5;
}
#verification .uk-text-small a {
  color: #778186;
}
#verification .uk-text-small a::after {
  width: 100%;
  bottom: 0px;
}
@media (max-width: 640px) {
  #verification h2 {
    font-size: 18px;
    line-height: 20px;
  }
  #verification h2 span {
    font-size: 19px;
    line-height: 21px;
  }
  #verification .ac-input-surface {
    margin-top: 10px;
  }
}
@media (min-width: 640px) {
  #verification .ac-form-small-width {
    margin: auto;
  }
}
/* GAMEPLAY *****************************************************************************************************************/
#gameplay {
  background: url('../img/bg-gameplay.jpg') top center no-repeat #00d5e5;
}
#gameplay h2 {
  font-size: 25px;
  line-height: 27px;
}
#gameplay h2 span {
  font-size: 24px;
  line-height: 26px;
}
#gameplay #ac-form-quiz {
  width: 100%;
  max-width: 450px;
  margin: auto;
}
#gameplay #ac-form-quiz #ac-quiz-question {
  font-weight: bold;
  font-size: 16px;
  line-height: 18px;
  color: #e95126;
  font-family: 'Poppins', sans-serif;
}
#gameplay #ac-form-quiz .ac-quiz-label {
  font-family: 'Poppins', sans-serif;
  color: #778186;
  font-size: 13px;
  line-height: 15px;
  margin-bottom: 15px;
}
#gameplay #ac-form-quiz .uk-radio {
  width: 13px;
  height: 13px;
  margin-right: 5px;
}
#gameplay #ac-form-quiz .ac-button {
  max-width: 385px;
}
@media (max-width: 640px) {
  #gameplay h2 {
    font-size: 18px;
    line-height: 20px;
  }
  #gameplay h2 span {
    font-size: 19px;
    line-height: 21px;
  }
  #gameplay #ac-form-quiz #ac-quiz-question {
    font-size: 14px;
    line-height: 16px;
  }
  #gameplay #ac-form-quiz .ac-quiz-label {
    font-size: 12px;
    line-height: 14px;
  }
}
/* CONFETTIS ****************************************************************************************************************************/
#gameplay {
  position: relative;
}
#confetti-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
  overflow: hidden;
}
#gameplay .uk-container {
  position: relative;
  z-index: 2;
}
#confetti-static {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 350px;
  overflow: hidden;
  transition: opacity 1s ease;
}
#confetti-static.fading {
  opacity: 0;
}
#confetti-rain {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: 1300px;
}
.confetti {
  position: absolute;
}
.confetti-static {
  opacity: 0.9;
}
.confetti-rain {
  top: -20px;
  animation: confettiFall linear forwards, confettiSway ease-in-out infinite;
}
@keyframes confettiFall {
  0% {
    top: -20px;
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    top: 100vh;
    opacity: 0;
  }
}
@keyframes confettiSway {
  0%,
  100% {
    transform: translateX(0) rotate(0deg);
  }
  25% {
    transform: translateX(30px) rotate(90deg);
  }
  50% {
    transform: translateX(-20px) rotate(180deg);
  }
  75% {
    transform: translateX(25px) rotate(270deg);
  }
}
/* GAMEPLAY - CARTES A RETOURNER ****************************************************************************************************************************/
#ac-gameplay-header .ac-text-lead {
  transition: opacity 0.5s ease;
}
#ac-gameplay-header .ac-text-lead.hidden {
  opacity: 0;
  height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.ac-game-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 20px 0;
}
.ac-cards-zone {
  position: relative;
  width: 100%;
  max-width: 979px;
  height: 423px;
  transition: max-width 0.8s cubic-bezier(0.4, 0, 0.2, 1), height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.ac-cards-zone.reduced {
  max-width: 323px;
}
.ac-cards-container {
  position: relative;
  width: 100%;
  height: 100%;
}
.ac-card-wrapper {
  position: absolute;
  top: 50%;
  transition: opacity 0.5s ease, left 0.8s cubic-bezier(0.4, 0, 0.2, 1), top 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 0.5s ease;
}
.ac-card-wrapper[data-card="1"] {
  left: calc(50% - 263px * 1.5 - 75px);
  transform: translateY(-50%) rotate(-3deg);
}
.ac-card-wrapper[data-card="2"] {
  left: calc(50% - 263px / 2);
  transform: translateY(-50%) rotate(2deg) translateY(20px);
}
.ac-card-wrapper[data-card="3"] {
  left: calc(50% + 263px / 2 + 75px);
  transform: translateY(-50%) rotate(-4deg) translateY(-5px);
}
.ac-card-wrapper.fading {
  opacity: 0;
  pointer-events: none;
}
.ac-card-wrapper.hidden {
  display: none;
}
.ac-card-wrapper.selected {
  left: 20px;
  transform: translateY(-50%) rotate(-5deg);
}
.ac-flip-card {
  width: 263px;
  aspect-ratio: 0.67;
  perspective: 1000px;
  cursor: pointer;
  transition: transform 0.3s ease, filter 0.3s ease;
  filter: drop-shadow(0 15px 15px rgba(0, 0, 0, 0.3));
}
.ac-flip-card:hover:not(.flipped):not(.disabled) {
  transform: scale(1.05);
  filter: drop-shadow(0 20px 35px rgba(0, 0, 0, 0.4));
}
.ac-flip-card.disabled {
  cursor: not-allowed;
  pointer-events: none;
}
.ac-flip-card.flipped .ac-flip-card-inner {
  transform: rotateY(180deg);
}
.ac-flip-card:not(.flipped):not(.disabled):hover .ac-flip-card-inner {
  animation: cardShake 0.5s ease-in-out;
}
.ac-flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  transition: transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
  transform-style: preserve-3d;
}
.ac-flip-card-front,
.ac-flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}
.ac-flip-card-front img,
.ac-flip-card-back img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ac-flip-card-back {
  transform: rotateY(180deg);
}
@keyframes cardShake {
  0%,
  100% {
    transform: rotateY(0deg);
  }
  25% {
    transform: rotateY(-5deg);
  }
  75% {
    transform: rotateY(5deg);
  }
}
.ac-result-zone {
  flex: 0;
  overflow: hidden;
  opacity: 0;
  max-width: 0;
  max-height: 0;
  transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.ac-result-zone.visible {
  flex: 1;
  opacity: 1;
  max-width: 500px;
  max-height: 600px;
  padding-left: 30px;
}
.ac-result-zone p {
  font-family: 'Poppins', sans-serif;
  font-size: 16px;
  line-height: 18px;
  color: #ffffff;
}
.ac-result-zone p.ac-text-tas {
  font-size: 18px;
  line-height: 20px;
  text-transform: uppercase;
  font-weight: 500;
}
.ac-result-zone p.ac-text-offres {
  font-size: 12px;
  line-height: 14px;
}
.ac-result-zone .ac-button:hover {
  color: #ffffff;
}
.ac-result-zone .ac-button:hover::after {
  width: 0;
}
@media (max-width: 960px) {
  .ac-game-wrapper {
    flex-direction: column;
    min-height: auto;
    padding: 15px;
  }
  .ac-cards-zone {
    max-width: 600px;
    height: 300px;
  }
  .ac-cards-zone.reduced {
    max-width: 220px;
  }
  .ac-flip-card {
    width: 180px;
  }
  .ac-card-wrapper[data-card="1"] {
    left: calc(50% - 180px * 1.5 - 15px);
  }
  .ac-card-wrapper[data-card="2"] {
    left: calc(50% - 180px / 2);
  }
  .ac-card-wrapper[data-card="3"] {
    left: calc(50% + 180px / 2 + 15px);
  }
  .ac-card-wrapper.selected {
    left: calc(50% - 180px / 2);
    transform: translateY(-50%) rotate(0deg);
  }
  .ac-result-zone {
    position: relative;
    margin-top: 20px;
  }
  .ac-result-zone.visible {
    padding-left: 0;
    padding-top: 20px;
    max-width: 100%;
  }
}
@media (max-width: 640px) {
  #gameplay {
    background: url('../img/bg-gameplay-mobile.png') top center no-repeat #a3d2bb;
    padding: 15px;
  }
  #gameplay .ac-text-lead {
    font-size: 19px;
    line-height: 21px;
    transition: opacity 0.5s ease, height 0.5s ease, margin 0.5s ease;
  }
  #gameplay .ac-text-lead-big {
    font-size: 24px;
    line-height: 26px;
  }
  #ac-gameplay-header .ac-text-lead.hidden {
    height: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
  }
  .ac-game-wrapper {
    padding: 10px;
  }
  .ac-cards-zone {
    max-width: 340px;
    height: 440px;
  }
  .ac-cards-zone.reduced {
    max-width: 220px;
    height: 280px;
  }
  .ac-flip-card {
    width: 140px;
    transition: width 0.5s ease;
  }
  .ac-cards-zone.reduced .ac-card-wrapper.selected .ac-flip-card {
    width: 180px;
  }
  .ac-flip-card-front,
  .ac-flip-card-back {
    border-radius: 8px;
  }
  .ac-card-wrapper[data-card="1"] {
    top: 28%;
    left: calc(50% - 140px - 20px / 2);
    transform: translateY(-50%) rotate(-2deg);
  }
  .ac-card-wrapper[data-card="2"] {
    top: 28%;
    left: calc(50% + 20px / 2);
    transform: translateY(-50%) rotate(2deg);
  }
  .ac-card-wrapper[data-card="3"] {
    top: 80%;
    left: calc(50% - 140px / 2);
    transform: translateY(-50%) rotate(-2deg);
  }
  .ac-card-wrapper.selected {
    top: 50%;
    left: calc(50% - 140px / 2);
    transform: translateY(-50%) rotate(0deg);
  }
  .ac-cards-zone.reduced .ac-card-wrapper.selected {
    top: 50%;
    left: calc(50% - 180px / 2);
  }
  .ac-result-content {
    padding: 20px;
  }
  .ac-result-content h2 {
    font-size: 22px;
    line-height: 26px;
  }
  #confetti-static {
    height: 80px;
    opacity: 0.5;
  }
}
/* FIN *****************************************************************************************************************/
#fin h2,
#terminer h2,
#teaser h2 {
  font-size: 32px;
  line-height: 34px;
}
#fin .ac-inner-card p,
#terminer .ac-inner-card p,
#teaser .ac-inner-card p {
  font-family: 'Open Sans', sans-serif;
  color: #778186;
}
#fin .ac-inner-card .ac-text-confirm-tas,
#terminer .ac-inner-card .ac-text-confirm-tas,
#teaser .ac-inner-card .ac-text-confirm-tas {
  font-size: 15px;
  line-height: 17px;
  text-transform: uppercase;
  font-weight: 500;
}
#fin .ac-inner-card .ac-box-tas,
#terminer .ac-inner-card .ac-box-tas,
#teaser .ac-inner-card .ac-box-tas {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  padding: 20px;
  max-width: 210px;
  margin: auto;
}
#fin .ac-inner-card .ac-box-tas .ac-tas-text,
#terminer .ac-inner-card .ac-box-tas .ac-tas-text,
#teaser .ac-inner-card .ac-box-tas .ac-tas-text {
  font-size: 14px;
  line-height: 16px;
}
#fin .ac-inner-card .ac-box-tas .ac-tas-date,
#terminer .ac-inner-card .ac-box-tas .ac-tas-date,
#teaser .ac-inner-card .ac-box-tas .ac-tas-date {
  font-size: 24px;
  line-height: 26px;
  font-weight: 600;
  margin-top: 5px;
}
#fin .ac-inner-card .ac-step-tas-text,
#terminer .ac-inner-card .ac-step-tas-text,
#teaser .ac-inner-card .ac-step-tas-text {
  font-size: 13px;
  line-height: 15px;
  opacity: 0.5;
  margin-top: 8px;
}
#fin .ac-inner-card .ac-conclusion-text,
#terminer .ac-inner-card .ac-conclusion-text,
#teaser .ac-inner-card .ac-conclusion-text {
  font-size: 15px;
  line-height: 17px;
  font-weight: 600;
}
#fin .ac-inner-card .ac-button:hover,
#terminer .ac-inner-card .ac-button:hover,
#teaser .ac-inner-card .ac-button:hover {
  color: #ffffff;
}
#fin .ac-inner-card .ac-button:hover::after,
#terminer .ac-inner-card .ac-button:hover::after,
#teaser .ac-inner-card .ac-button:hover::after {
  width: 0;
}
#teaser .ac-inner-card .ac-box-tas {
  max-width: 300px;
}
#terminer h2 {
  font-size: 22px;
  line-height: 24px;
}
@media (max-width: 640px) {
  #fin h2,
  #terminer h2,
  #teaser h2 {
    font-size: 22px;
    line-height: 24px;
  }
}
/* FOOTER SECTION ****************************************************************************************************************************/
#ac-footer {
  padding: 20px 40px;
  max-width: 1300px;
  margin: auto;
}
#ac-footer p {
  font-family: 'Open Sans', sans-serif;
  color: #778186;
  font-size: 12px;
  line-height: 14px;
  opacity: 0.5;
}
#ac-footer p a {
  color: #778186;
}
#ac-footer p a::after {
  width: 100%;
}
#ac-footer .uk-nav li,
#ac-footer .uk-nav a {
  font-family: 'Open Sans', sans-serif;
  color: #1e9669;
  font-size: 12px;
  line-height: 14px;
  position: relative;
}
#ac-footer .uk-nav li a::after {
  bottom: 4px;
}
#ac-footer .uk-nav .ac-footer-link-bullet {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #1e9669;
  margin: 0 5px;
}
#ac-footer .ac-logo-partenaires {
  max-width: 100px;
}
#modal-contact .uk-modal-dialog,
#modal-connection .uk-modal-dialog {
  max-width: 400px !important;
}
#modal-contact .uk-modal-dialog a::after,
#modal-connection .uk-modal-dialog a::after {
  bottom: 0;
}
#modal-mentions-legales .uk-modal-dialog {
  max-width: 780px !important;
}
#modal-mentions-legales .uk-modal-dialog a:hover::after {
  width: 0;
}
#modal-mentions-legales .uk-modal-dialog .logo-mentions {
  max-width: 200px;
}
.uk-modal-body {
  border-radius: 15px;
}
.uk-modal-body h2 {
  font-family: 'Poppins', sans-serif;
  color: #1e9669;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 20px;
}
.uk-modal-body h3 {
  font-family: 'Poppins', sans-serif;
  color: #1e9669;
  font-size: 16px;
  margin-bottom: 0;
}
.uk-modal-body p {
  font-family: 'Open Sans', sans-serif;
  color: #778186;
  font-size: 14px;
  margin-top: 5px;
}
.uk-modal-body a {
  color: #778186;
}
.ac-footer-separateur {
  margin-left: 5px;
  margin-right: 5px;
  max-width: 4px;
}
@media (max-width: 640px) {
  #ac-footer {
    padding: 20px;
  }
  #ac-footer p {
    font-size: 12px;
  }
  #ac-footer img {
    max-width: 150px;
  }
  .uk-modal-body h2 {
    font-size: 24px;
  }
  .uk-modal-body h3 {
    font-size: 20px;
  }
}
/* COOKIES BANNER ****************************************************************************************************************************/
#ac-cookies-banner {
  background-color: #ffffff;
  color: #778186;
  z-index: 30;
  padding: 5px !important;
}
#ac-cookies-banner p {
  font-size: 14px;
}
