/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/
Description: Thème enfant de Hello Elementor.
Author: Amandine Gagnon
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-elementor-child
*/
body > div[data-elementor-type="wp-page"] > div {
	max-width: 100vw !important;
	overflow: hidden;
}
.gradient-background{
  background: linear-gradient(31.98deg, #E9669F -0.07%, #F16E6E 22.79%, #F87D3F 50.02%, #F87D3F 77.79%, #FAA439 90.31%, #FAB137 113.18%)!important;
}
.gradient-background-phone{
  background: linear-gradient(31.98deg, #E9669F -0.07%, #F16E6E 22.79%, #F87D3F 50.02%, #F87D3F 77.79%, #FAA439 90.31%, #FAB137 113.18%) url("./../../uploads/2025/11/Vector.png")!important;
}
.elementor-kit-44 button{
  background-image: initial!important;
}
footer a{
    text-decoration: none!important;
}
p{
  line-height: 1.6!important;
  margin-bottom: 0!important;
}
p > a{
  font-size: 16px;
}
.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) p > a:hover,
p > a:hover{
  text-transform: uppercase;
  background-image: linear-gradient(
  -225deg,
  #231557 0%,
  #44107a 29%,
  #ff1361 67%,
  #fff800 100%
  )!important;
  background-size: auto auto;
  background-clip: border-box;
  background-size: 200% auto;
  color: #fff;
  background-clip: text;
  text-fill-color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: textclip 2s linear infinite;
  display: inline-block;
  text-decoration: none!important;
}
@keyframes textclip {
  to {
  background-position: 200% center;
  }
}
ul li::marker {
  content: "👉 ";
}
pre {
	display: inline;
}
h1 img {
	aspect-ratio: 1/1;
	height: 80px !important;
	width: auto;
	margin-bottom: -15px;
	margin-right: 10px;
	margin-left: -10px;
}
.fa-solid, .fas {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.fa-regular, .far {
  font-family: "Font Awesome 5 Free";
  font-weight: 400;
}

.fa-brands, .fab {
  font-family: "Font Awesome 5 Brands";
  font-weight: 400;
}
body.menu-open .float{
  opacity: 0;
}
.e-con.float{
  position: fixed!important;
  top: 90%;
  right: 0;
  max-width: 225px !important;
  border-radius: 20px 0 0 20px;
  transform: translateY(-100%);
  z-index: 100;
  opacity: 1;
  transition: .2s all ease-in-out!important;
  overflow: hidden;
  padding-right: 0!important;
}
.e-con.float .e-con-inner{
  padding-top: 0;
}
.float .elementor-image-box-description a,
.float .elementor-image-box-description{
  color: rgba(87, 130, 1, 1)!important;
  
}
.float .elementor-image-box-description a{
  text-decoration: underline!important;
}
.float .elementor-image-box-description a:before{
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.e-con.float:before{
  content: "X";
  position: absolute;
  left: 10%;
  top: 5%;
  cursor: pointer;
  z-index: 5;
  width: fit-content;
  height: fit-content;
}
.elementor-kit-44 button.cta-abonnement-color,
.cta-abonnement-color a{
  background: linear-gradient(90deg, #E867A0 0%, #FBB037 50%, #E867A0 100%)!important;
  background-size: 200% 100%!important; /* ne change pas la taille du bouton */
  background-position: 0% 0%!important;
  transition: background-position .5s linear!important;
}

.cta-abonnement{
  display: flex;
  flex-direction: column;
  align-items: center;
  background: linear-gradient(90deg, #E867A0 0%, #FBB037 50%, #E867A0 100%);
  background-size: 200% 100%; /* ne change pas la taille du bouton */
  background-position: 0% 0%;
  transition: background-position .5s linear!important;
  border-radius: 20px;
  font-size: 15px;
  font-weight: bold;
  padding: 15px 26px;
}
/* Au hover : il slide vers la gauche */
.elementor-kit-44 button.cta-abonnement-color:hover,
.cta-abonnement-color a:hover,
.cta-abonnement:hover {
  background-position: 100% 0%!important;
}

.elementor-kit-44 a.cta-abonnement{
  color: #fff;
  text-decoration: none;
}
.cta-abonnement span{
  font-size: 11px;
  font-weight: 400;
}
.cta-abonnement-text .elementor-button-content-wrapper:after{
  content: "Temps : 60 secondes";
  font-weight: 400;
  font-size: 11px;
}
.cta-activation-text .elementor-button-content-wrapper:after{
  content: "Activez votre carte maintenant !";
  font-weight: 400;
  font-size: 11px;
}
.cta-activation-text .elementor-button-content-wrapper,
.cta-abonnement-text .elementor-button-content-wrapper{
  flex-direction: column;
  gap: 8px;
}
.gradient-background .border-text{
  color: #000;
}
.border-text {
	padding: 12px 34px;
	border: 1px solid black;
	border-radius: 20px;
	background: #fff;
	transform: rotate(-4deg) translateY(-12%);
	/* position: relative; */
	display: inline-block;
	width: fit-content;
  box-shadow: 4px 3px 0px 1px rgba(64, 64, 64, 1);
  margin: .25em 0;
}
.border-text.reverse {
	transform: rotate(4deg) translateY(-12%);
}

.width-auto{
    width: fit-content!important;
}
footer > div:first-child .e-n-menu-heading {
	flex-direction: column !important;
}
.elementor-widget-n-menu .e-n-menu-title{
    padding: 0!important;
}

.card-abonnement{
  background: radial-gradient(100% 100% at 75% -65%, #F87640 24.04%, rgba(248, 118, 64, 0) 100%) #fff;
}
.card-abonnement.beige{
  background: radial-gradient(100% 100% at 75% -65%, #F87640 24.04%, rgba(248, 118, 64, 0) 100%);
}
.card-abonnement h3 {
    background: linear-gradient(180deg, #E867A0 0%, #FBB037 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; /* Safari / Chrome */
    background-clip: text; /* Firefox */
    color: transparent;
    line-height: 1;
}

.faq .e-n-accordion-item-title{
  flex-direction: row-reverse!important;
}
.faq .e-n-accordion-item > div{
  border: none;
}
.comments {
    display: inline-block;
    background: #ffffff;
    color: #333;
    padding: 10px 18px;
    border-radius: 7px!important;
    font-size: 16px;
    font-weight: 700!important;
    position: relative;
    box-shadow: 0 1px 1px rgba(0,0,0,1);
}

/* La flèche */
.comments::after {
    content: "";
    position: absolute;
    bottom: -8px; /* descend la pointe */
    left: 75%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #ffffff; /* couleur du fond */
    filter: drop-shadow(0 1px 1px rgba(0,0,0,1)); /* donne l'effet d'ombre comme ton modèle */
}

.border-gradient {
  border-radius: 20px; /* mets ton radius ici */
  border: 4px solid transparent;
  background:
    /* fond intérieur */
    linear-gradient(#fff, #fff) padding-box,
    /* bordure dégradée */
    linear-gradient(55.84deg, #E867A0 -0.29%, #FBB037 90.52%) border-box;
}
.gform_required_legend, .gfield_required, #gform_1 input[type="submit"], #gform_2 input[type="submit"]{display: none!important;}

.description-column .elementor-image-box-description{display: flex;flex-direction: column; align-items: end;}
.recap a.elementor-button .elementor-button-text{pointer-events: all;}
.e-n-tabs-heading > button[aria-selected="true"]{
  font-weight: 700!important;
}
body .gform_wrapper .noUi-target{  margin-top: 15px!important; border: none!important; border-radius: 5px!important; box-shadow: none!important; background: rgba(236, 236, 236, 1)!important; }
body .gform-theme--framework .gfield--type-nurslider .noUi-connect{background-color: rgba(126, 184, 255, 1)!important;}
body .gform_wrapper .noUi-horizontal .noUi-handle{
  background: rgba(126, 184, 255, 1);
  border-color: #fff;
  border-radius: 100%;
  aspect-ratio: 1/1;
  height: 34px!important;
  width: auto!important;
  top: -10px!important;
  box-shadow: none;
}

body #gform_wrapper_2.gform_wrapper .noUi-horizontal .noUi-handle{
  aspect-ratio: 16/9;
  width: auto!important;
  border-radius: 10em;
}
body .gform_wrapper .noUi-handle:before,
body .gform_wrapper .noUi-handle:after{
  display: none!important;
}
body .gform_wrapper .noUi-tooltip {
	border: none!important;
	background: none!important;
	color: #FFF !important;
	bottom: 0 !important;
	font-size: 22px !important;
	font-weight: 700;
}

.gform_wrapper .gchoice label{
  font-weight: 600!important;
}
.gform_wrapper label{
  align-items: center!important;
}
.gform_wrapper legend:before,
.gform_wrapper .gfield > label:before{
  content: "";
  display: block;
  width: 20px;
  height: 20px;  
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.voyageur label:before{
  background-image : url('./../../uploads/2025/10/PYB-picto-share.svg');
}
.nuit label::before{
  background-image: url('./../../uploads/2025/10/PYB-picto-night.svg');
}
.hebergement label::before{
  background-image: url('./../../uploads/2025/10/PYB-picto-up.svg');
}
.option legend::before{
  background-image: url('./../../uploads/2025/10/PYB-picto-diner.svg');
}
.cadeau label::before{
  background-image: url('./../../uploads/2025/10/PYB-picto-heart.svg');
}
.tirelire label::before{
  background-image: url('./../../uploads/2025/11/picto-tirelire.png');
}
.slide .recap .border-gradient .elementor-image-box-content{
  justify-content: center;
}
.slide .border-gradient .elementor-image-box-description{
  text-align: center
}
.small{
 font-size: 11px;
  font-weight: 400;
}
.slides {
  position: relative;
}


/* flèches */
.slides-nav {
  position: absolute;
  top: -3em;
  right: 0;
  display: flex;
  gap: 8px;
  z-index: 10;
}

.slides-btn {
	width: 49px;
	height: 49px;
	border-radius: 100%!important;
	padding: 0 !important;
	border: none !important;
	box-shadow: none !important;
}

.slides-btn:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.slides-btn svg {
  width: 49px;
  height: 49px;
}

.slides__cards .card,
.slide {
  display: none!important;
  position: initial!important;
  opacity: 0;
}

.slide.active {
  display: flex!important;
  opacity: 1;
  animation: fade .25s ease;
}
.slides__cards .card.active{
  display: grid!important;
  opacity: 1;
  animation: fade .25s ease;
}

@keyframes fade {
  from { opacity: 0 }
  to   { opacity: 1 }
}
@media only screen and (min-width: 1081px) {
  .recap .elementor-image-box-description{text-align: right;}
}
@media only screen and (max-width: 1080px) {
  .border-text {
    padding: 6px 17px;
  }
  /* .e-con-full{
    padding-left: 27px!important;
    padding-right: 27px!important;
  } */
  .elementor-heading-title br{display: none;}
  p{
    font-size: 14px;
  }
  h1, h2, h3{
    font-size: 35px!important;
    line-height: 1.2!important;
  }
  h1 img {
    aspect-ratio: 1/1;
    height: 40px !important;
    width: auto;
    margin-bottom: -10px;
    margin-right: 0;
  }
  footer .e-n-menu-heading{
    justify-content: center;
    align-items: center;
    flex-direction: column !important;
  }
  .float .elementor-image-box-title{
    font-size: 15px!important;
  }
  .float .elementor-image-box-img{
    margin: 0!important;
  }
  .float{
    max-width: 40vw!important;
    padding: 1rem!important;
  }
  .recap .elementor-widget-image-box .elementor-image-box-wrapper {
    text-align: center;
    display: flex;
    align-items: center;
    gap: .5rem;
  }
  .recap .elementor-image-box-content {
    flex-wrap: wrap;
  }
  .e-n-tabs-heading .e-n-tab-title{max-width: 100%;}

}