@charset "UTF-8";










@media only screen and (min-width: 0) and (max-width: calc(768px - 1px)) {
  p {
    font-size: 1.8rem;
    line-height: 2.6rem; } }

@media only screen and (min-width: 768px) {
  p {
    font-size: 2rem;
    line-height: 3rem; } }

.tabs-content p {
  font-size: 1.6rem;
  line-height: 2.4rem; }

@media only screen and (min-width: 0) and (max-width: calc(768px - 1px)) {
  .list-numbered li {
    font-size: 1.6rem;
    line-height: 2.4rem; } }

@media only screen and (min-width: 768px) {
  .list-numbered li {
    font-size: 1.8rem;
    line-height: 2.6rem; } }

blockquote {
  font-family: "AcherusBlack", sans-serif;
  margin: 0 0 32px; }
  blockquote::before, blockquote::after {
    display: block;
    height: 24px;
    line-height: 1; }
  blockquote:before {
    color: #58c5c7;
    content: '‘‘ ';
    margin-bottom: 6px; }
  blockquote:after {
    color: #58c5c7;
    content: ' ’’';
    margin-top: 6px; }
  html[lang='fr'] blockquote::before, html[lang='fr'] blockquote::after {
    height: 34px;
    line-height: 34px;
    vertical-align: middle; }
  html[lang='fr'] blockquote:before {
    content: '«';
    margin: -4px 0 6px; }
  html[lang='fr'] blockquote:after {
    content: '»';
    margin: 0; }
  @media only screen and (min-width: 0) and (max-width: calc(768px - 1px)) {
    blockquote {
      font-size: 2.6rem;
      line-height: 3.6rem; } }
  @media only screen and (min-width: 768px) {
    blockquote {
      font-size: 3.6rem;
      line-height: 4rem; } }

.modal-container.modal-newsletter .modal-dialog .modal-content ul {
  padding: 0 0 0 32px; }

.list-numbered {
  counter-reset: items;
  list-style: none; }
  .list-numbered:last-child {
    margin: 0; }
  .list-numbered li {
    counter-increment: items;
    margin: 0 0 20px;
    padding-left: 38px;
    position: relative; }
    .list-numbered li:last-child {
      margin: 0; }
    .list-numbered li:before {
      content: counter(items);
      left: 0;
      min-width: 18px;
      position: absolute;
      text-align: center;
      top: 0;
      font-size: 2.8rem;
      line-height: 3.2rem; }
    .list-numbered li:after {
      background: #58c5c7;
      content: '';
      display: block;
      height: 2px;
      left: 0;
      position: absolute;
      top: 35px;
      width: 18px; }

.price-with-rebate {
  text-align: center; }
  .price-with-rebate .old-price {
    text-decoration: line-through;
    font-size: 1.4rem; }
  .price-with-rebate .rebate {
    color: #f02244;
    font-family: "AcherusBold", sans-serif;
    margin-left: 10px; }
  .price-with-rebate + p {
    color: #58c5c7;
    font-family: "AcherusBold", sans-serif;
    margin-top: -2px !important;
    text-align: center; }

.modal-container {
  height: 100%;
  left: 0;
  overflow: auto;
  position: fixed;
  top: 0;
  transform: scale(0);
  width: 100%;
  z-index: 1000000;
  
  
  
  
   }
  .modal-container.transition-in {
    transform: scale(1); }
    .modal-container.transition-in .modal {
      animation: scaleUp 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
      opacity: 0; }
  .modal-container.transition-out {
    animation: quickScaleDown 0s 0.5s linear forwards; }
    .modal-container.transition-out .modal {
      animation: scaleDown 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards; }
  .modal-container.modal-confirm .modal-dialog {
    max-width: 500px; }
    .modal-container.modal-confirm .modal-dialog .modal {
      border: 2px solid #cfb87f;
      border-radius: 0;
      text-align: center; }
  .modal-container.modal-confirm .modal-actions {
    margin-top: 28px; }
    @media only screen and (min-width: 600px) {
      .modal-container.modal-confirm .modal-actions {
        display: flex;
        flex-direction: row-reverse;
        gap: 20px;
        justify-content: center; } }
    .modal-container.modal-confirm .modal-actions .btn {
      box-sizing: border-box;
      display: block;
      margin: 0 0 15px;
      text-decoration: none;
      width: 100%; }
      @media only screen and (min-width: 600px) {
        .modal-container.modal-confirm .modal-actions .btn {
          display: inline-block;
          margin: 0;
          width: auto; } }
      .modal-container.modal-confirm .modal-actions .btn:last-child {
        margin-bottom: 0; }
  .modal-container.modal-newsletter {
    display: flex;
    align-items: flex-start;
    justify-content: center; }
    @media only screen and (min-width: 768px) {
      .modal-container.modal-newsletter {
        align-items: center; } }
    .modal-container.modal-newsletter .modal-dialog {
      width: 100%;
      margin: 0; }
      @media only screen and (min-width: 768px) {
        .modal-container.modal-newsletter .modal-dialog {
          max-width: 860px; } }
      .modal-container.modal-newsletter .modal-dialog .modal {
        padding: 5rem 0 0;
        min-height: 100dvh;
        display: flex;
        align-items: center; }
        .modal-container.modal-newsletter .modal-dialog .modal fieldset, .modal-container.modal-newsletter .modal-dialog .modal .title {
          padding: 0 2rem; }
        @media only screen and (min-width: 768px) {
          .modal-container.modal-newsletter .modal-dialog .modal {
            padding: 5rem;
            min-height: auto; }
            .modal-container.modal-newsletter .modal-dialog .modal fieldset, .modal-container.modal-newsletter .modal-dialog .modal .title {
              padding: 0; } }
      .modal-container.modal-newsletter .modal-dialog .modal-content {
        width: 100%; }
        .modal-container.modal-newsletter .modal-dialog .modal-content .title {
          margin-bottom: 2.5rem;
          text-align: center;
          margin-top: 60px; }
          @media only screen and (min-width: 768px) {
            .modal-container.modal-newsletter .modal-dialog .modal-content .title {
              text-align: left;
              margin-top: 0; } }
          .modal-container.modal-newsletter .modal-dialog .modal-content .title::before, .modal-container.modal-newsletter .modal-dialog .modal-content .title::after {
            content: unset; }
        .modal-container.modal-newsletter .modal-dialog .modal-content ul li,
        .modal-container.modal-newsletter .modal-dialog .modal-content ol li {
          margin-bottom: 0.5em; }
        .modal-container.modal-newsletter .modal-dialog .modal-content .question {
          margin: 2rem 0;
          font-size: 18px;
          text-align: center;
          justify-content: center; }
          .modal-container.modal-newsletter .modal-dialog .modal-content .question[for="country"] {
            margin-bottom: 1rem; }
          @media only screen and (min-width: 768px) {
            .modal-container.modal-newsletter .modal-dialog .modal-content .question {
              text-align: left;
              justify-content: flex-start; } }
        .modal-container.modal-newsletter .modal-dialog .modal-content .selects {
          display: flex;
          justify-content: center;
          flex-direction: column;
          align-items: center;
          gap: 1rem; }
          .modal-container.modal-newsletter .modal-dialog .modal-content .selects select {
            padding: 0 17px;
            font-size: 14px; }
          @media only screen and (min-width: 768px) {
            .modal-container.modal-newsletter .modal-dialog .modal-content .selects {
              justify-content: flex-start;
              align-items: flex-start;
              flex-direction: row;
              flex-wrap: wrap; }
              .modal-container.modal-newsletter .modal-dialog .modal-content .selects select {
                width: calc(50% - 1rem); } }
        .modal-container.modal-newsletter .modal-dialog .modal-content .radios {
          gap: 2rem;
          margin-bottom: 30px;
          width: 100%;
          display: flex;
          flex-wrap: wrap;
          justify-content: center; }
          @media only screen and (min-width: 768px) {
            .modal-container.modal-newsletter .modal-dialog .modal-content .radios {
              display: inline-flex;
              justify-content: space-between;
              flex-wrap: no-wrap;
              margin-bottom: 20px; } }
          .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item {
            aspect-ratio: 1/1;
            width: calc(33.33% - 1.4rem);
            height: auto;
            position: relative; }
            @media only screen and (min-width: 768px) {
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item {
                width: calc(20% - 2rem); } }
            .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item input {
              opacity: 0;
              position: absolute;
              left: -10000px; }
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item input:checked + label {
                border: 2px solid #51BEBF;
                background: rgba(40, 47, 80, 0.05); }
                .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item input:checked + label::after {
                  content: '';
                  width: 30px;
                  height: 30px;
                  border-radius: 50%;
                  background-color: #51BEBF;
                  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m6%2010.675-.725-.66C2.7%207.68%201%206.135%201%204.25A2.72%202.72%200%200%201%203.75%201.5c.87%200%201.705.405%202.25%201.04A3.007%203.007%200%200%201%208.25%201.5%202.72%202.72%200%200%201%2011%204.25c0%201.885-1.7%203.43-4.275%205.765l-.725.66Z%22%20fill%3D%22%23292F4E%22%2F%3E%3C%2Fsvg%3E");
                  background-position: center;
                  background-size: rem(12px);
                  background-repeat: no-repeat;
                  position: absolute;
                  top: -11px;
                  right: 11px; }
            .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label {
              display: flex;
              flex-direction: column;
              align-items: center;
              justify-content: center;
              gap: 2rem;
              text-transform: uppercase;
              border: solid 1px rgba(40, 47, 80, 0.1);
              border-radius: 10px;
              width: 100%;
              height: 100%;
              cursor: pointer;
              transition: border 0.3s;
              position: absolute;
              top: 0;
              left: 0; }
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label:hover {
                border: 2px solid #51BEBF; }
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label:focus {
                border: 2px solid #51BEBF; }
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label.radios__item--interest {
                gap: 1.4rem; }
                @media only screen and (min-width: 768px) {
                  .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label.radios__item--interest {
                    gap: 2rem; } }
                .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label.radios__item--interest span {
                  font-weight: 700;
                  font-size: 1rem; }
                  @media only screen and (min-width: 600px) {
                    .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label.radios__item--interest span {
                      font-size: 1.4rem; } }
                .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label.radios__item--interest::before {
                  content: '';
                  width: 30px;
                  height: 30px;
                  background-position: center center;
                  background-repeat: no-repeat;
                  background-size: contain; }
                  @media only screen and (min-width: 600px) {
                    .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label.radios__item--interest::before {
                      width: 50px;
                      height: 50px; } }
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label[for="history"]::before {
                background-image: url("../../../img/pictos/newsletter-interest-history.svg"); }
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label[for="events"]::before {
                background-image: url("../../../img/pictos/newsletter-interest-events.svg"); }
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label[for="restaurants"]::before {
                background-image: url("../../../img/pictos/newsletter-interest-restaurants.svg"); }
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label[for="nature"]::before {
                background-image: url("../../../img/pictos/newsletter-interest-nature.svg"); }
              .modal-container.modal-newsletter .modal-dialog .modal-content .radios .radios__item label[for="family"]::before {
                background-image: url("../../../img/pictos/newsletter-interest-family.svg"); }
        .modal-container.modal-newsletter .modal-dialog .modal-content--success {
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: center; }
          .modal-container.modal-newsletter .modal-dialog .modal-content--success .title {
            text-align: center;
            margin-top: 0;
            font-size: 40px; }
          .modal-container.modal-newsletter .modal-dialog .modal-content--success .btn {
            align-self: center; }
          .modal-container.modal-newsletter .modal-dialog .modal-content--success svg {
            width: 160px;
            height: 160px;
            margin-bottom: 2.5rem; }
          .modal-container.modal-newsletter .modal-dialog .modal-content--success img.avelo-logo {
            margin-bottom: 2.5rem; }
      .modal-container.modal-newsletter .modal-dialog .legal {
        font-size: 12px;
        margin-bottom: 0;
        margin-top: 1em; }
      .modal-container.modal-newsletter .modal-dialog .close {
        width: 30px;
        height: 30px;
        background: transparent;
        position: absolute;
        top: 20px;
        right: 20px; }
        .modal-container.modal-newsletter .modal-dialog .close svg {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
  .modal-container.modal-info .modal-dialog {
    margin: 0; }
    @media only screen and (min-width: 768px) {
      .modal-container.modal-info .modal-dialog {
        margin: 64px auto;
        max-width: 650px; } }
    .modal-container.modal-info .modal-dialog .modal {
      background: #58c5c7;
      border-radius: 0;
      min-height: 100vh;
      padding: 60px 30px;
      text-align: left; }
      @media only screen and (min-width: 768px) {
        .modal-container.modal-info .modal-dialog .modal {
          height: auto;
          min-height: 0;
          padding: 44px 60px 60px; } }
      .modal-container.modal-info .modal-dialog .modal button[data-modal-close] {
        background: none;
        margin: 0;
        padding: 0;
        position: absolute;
        right: 20px;
        top: 20px; }
      .modal-container.modal-info .modal-dialog .modal .modal-heading {
        margin: 0 0 15px;
        max-width: none;
        text-align: center; }
        .modal-container.modal-info .modal-dialog .modal .modal-heading .icon,
        .modal-container.modal-info .modal-dialog .modal .modal-heading .picto {
          display: block;
          margin: 0 auto 15px; }
      .modal-container.modal-info .modal-dialog .modal ol {
        list-style: none;
        padding: 0; }
        .modal-container.modal-info .modal-dialog .modal ol li {
          counter-increment: li;
          padding: 0 0 0 33px;
          position: relative; }
          .modal-container.modal-info .modal-dialog .modal ol li:before {
            content: counter(li);
            display: inline-block;
            height: 20px;
            left: 0;
            margin: 0 10px 0 0;
            position: absolute;
            text-align: center;
            top: 0;
            width: 20px;
            font-size: 1.4rem; }
          .modal-container.modal-info .modal-dialog .modal ol li:after {
            border: 2px solid #282f50;
            border-radius: 50%;
            content: '';
            display: inline-block;
            height: 24px;
            left: 0;
            position: absolute;
            top: 0;
            transform: translate(-2px, 2px);
            width: 24px; }
      .modal-container.modal-info .modal-dialog .modal a {
        color: #282f50;
        text-decoration: underline; }
  .modal-container .modal-dialog {
    margin: 32px; }
    @media only screen and (min-width: 600px) {
      .modal-container .modal-dialog {
        margin: 64px auto; } }
    .modal-container .modal-dialog .modal {
      background: #ffffff;
      border-radius: 4px;
      box-sizing: border-box;
      display: inline-block;
      font-weight: 300;
      padding: 15px;
      position: relative;
      width: 100%;
       }
      .modal-container .modal-dialog .modal button[data-modal-close] {
        align-self: flex-end; }
      .modal-container .modal-dialog .modal .btn-modal-close {
        background: transparent;
        position: absolute;
        padding: 10px;
        top: 10px;
        right: 10px; }
        .modal-container .modal-dialog .modal .btn-modal-close:focus-visible {
          outline: 2px dashed #282f50; }
        .modal-container .modal-dialog .modal .btn-modal-close span {
          margin: 0; }
      .modal-container .modal-dialog .modal .modal-heading {
        font-family: "AcherusBold", sans-serif;
        margin: 0 auto;
        max-width: 70%; }
        @media only screen and (min-width: 1680px) {
          .modal-container .modal-dialog .modal .modal-heading {
            font-size: 3rem;
            line-height: 4rem; } }
        @media only screen and (min-width: 600px) and (max-width: calc(1680px - 1px)) {
          .modal-container .modal-dialog .modal .modal-heading {
            font-size: 2.6rem;
            line-height: 3rem; } }
        @media only screen and (min-width: 0) and (max-width: calc(600px - 1px)) {
          .modal-container .modal-dialog .modal .modal-heading {
            max-width: none;
            font-size: 2.4rem;
            line-height: 2.8rem; } }
      @media only screen and (min-width: 768px) {
        .modal-container .modal-dialog .modal {
          margin: 0; } }
  .modal-container .modal-step {
    display: none; }
    .modal-container .modal-step.is-active {
      display: block; }
  @media only screen and (min-width: 600px) {
    .modal-container .modal-inner-wrapper {
      margin: 0 auto;
      max-width: 70%; } }
  .modal-container .modal-ticket-intro {
    border-bottom: 2px solid #cfb87f;
    padding: 35px 25px 40px; }
  .modal-container .modal-ticket-body {
    overflow-wrap: break-word;
    padding-top: 30px;
    word-wrap: break-word; }
    .modal-container .modal-ticket-body p {
      margin: 0 0 28px; }
      .modal-container .modal-ticket-body p:last-child {
        margin-bottom: 0; }
    .modal-container .modal-ticket-body .picto-crown {
      height: 18px;
      width: 28px; }
  .modal-container .modal-scrollable {
    max-height: 75vh;
    overflow-y: auto; }

#modal-backdrop {
  background: rgba(40, 47, 80, 0.7);
  height: 100vh;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: opacity 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  width: 100vw;
  z-index: 99; }
  #modal-backdrop.transition-in {
    opacity: 1; }

@keyframes scaleUp {
  0% {
    opacity: 0;
    transform: scale(0.8) translateY(1000px); }
  100% {
    opacity: 1;
    transform: scale(1) translateY(0); } }

@keyframes scaleDown {
  0% {
    opacity: 1;
    transform: scale(1) translateY(0); }
  100% {
    opacity: 0;
    transform: scale(0.8) translateY(1000px); } }

@keyframes quickScaleDown {
  0% {
    transform: scale(1); }
  99.9% {
    transform: scale(1); }
  100% {
    transform: scale(0); } }

/*# sourceMappingURL=modals.css.map */
