/* ============================================
   GLOBAL / RESET
   ============================================ */

body, html{
    overflow-x:hidden;
    margin: 0;
    /*overscroll-behavior-y: none;*/
}

button:focus,button:focus-visible{outline: 0!important;}
.elementor-icon{vertical-align:bottom!important;}

a, a:hover{color:inherit;}
b, strong{font-weight:600;}

ul li{
    margin-bottom: 1em;
}

/*animation des éléments*/
a, a:hover, button, a::after, button, button:hover, input, input:hover, header svg, header span.elementor-heading-title,
header .elementor-sticky--active, .scalehover, .scalehover:hover,
.elementor-button svg,
.elementor-widget-n-accordion details.e-n-accordion-item .e-n-accordion-item-title-text,
.custom-drop-zone{
    -webkit-transition-property: all !important;
    -o-transition-property: all !important;
    transition-property: all !important;
    -webkit-transition-duration: 0.2s!important;
    -o-transition-duration: 0.2s!important;
    transition-duration: 0.2s!important;
    -webkit-transition-timing-function: ease-in-out !important;
    -o-transition-timing-function: ease-in-out !important;
    transition-timing-function: ease-in-out !important;
}

.nolabelsform .elementor-field-group:not(.elementor-field-type-upload) label{
    display: none;
}

/*.reveal-blur*/
body:not(.elementor-editor-active) .reveal-blur {
  filter: blur(12px);
  opacity: 0;
  transition: filter 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

body:not(.elementor-editor-active) .reveal-blur.is-visible {
  filter: blur(0px);
  opacity: 1;
}

.elementor-counter-title{
    display: block!important;
    text-align: center;
}

/* ============================================
   VARIABLES & COULEURS
   ============================================ */
.svgwhite svg *{
    fill:white
}

.txtbleu{color: var(--bleu);}
.txtorange{color: var(--orange)}
.txtblanc{color: var(--blanc);}
.txtnoir{color: var(--noir);}

/* ============================================
   CLASSES & ELEMENTS RÉUTILISABLES
   ============================================ */

.nocursor {pointer-events: none;}
.hidden{display:none!important}
.pnomargin p{margin:0;}

.nostylelist ul {
    list-style: none;
    padding: 0;
    margin:0;
}

.txtbalanced {
  text-wrap: balance;
}

.swiper-overflow-visible .swiper{
    overflow: visible;
}

/*responsive rules*/
@media screen and (max-width:767px){.nomobile{display:none;}}
@media screen and (max-width:899px){.notablet{display:none;}}
@media screen and (min-width:900px){.nodesktop{display:none;}}

.scalehover:hover{
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
}

/* Bouton */
.btnpadel-light {
  color: var(--black);
  background-image: linear-gradient(
    50deg,
    #00102e 0%,
    #003580 30%,
    #0080ff40 55%,
    #e8f4ff 80%
    );
  background-size: 400% 100%;
  background-position: 100% 0%;
  transition: background-position 0.6s ease, color 0.6s ease;
}

.btnpadel-dark {
  color: var(--blanc);
    background-image: linear-gradient(
        50deg, 
        #003580 60%, 
        var(--black) 100%
        );
    background-size: 400% 100%;
    background-position: 100% 0%;
    transition: background-position 0.5s ease, color 0.5s ease;
}

.btnbistro-light {
  color: var(--black);
  background-image: linear-gradient(
    50deg,
    #2e0a00 0%,
    #803000 30%,
    #ff5e3240 55%,
    #fff4f0 80%
  );
  background-size: 400% 100%;
  background-position: 100% 0%;
  transition: background-position 0.6s ease, color 0.6s ease;
}

.btnbistro-dark {
  color: var(--blanc);
  background-image: linear-gradient(
    50deg,
    #803000 60%,
    var(--black) 100%
  );
  background-size: 400% 100%;
  background-position: 100% 0%;
  transition: background-position 0.5s ease, color 0.5s ease;
}

.btnpadel-light:hover,
.btnpadel-light:focus-visible,
.btnpadel-dark:hover,
.btnpadel-dark:focus-visible,
.btnbistro-light:hover,
.btnbistro-light:focus-visible,
.btnbistro-dark:hover,
.btnbistro-dark:focus-visible {
  background-position: 0% 0%;
  color: var(--blanc);
}

.bloctarif em,
.contact-list em{
    font-size: 0.8em;
    font-weight: 400;
}

.contact-list ul{
    gap: 5px;
}

.contact-list li{
    background: var(--bleu-clair);
    padding:10px 20px 10px 10px!important;
    border-radius: 11px;
}

.contactbersol .contact-list li{
    background: var(--orange-clair);
}

/* ============================================
   HEADER
   ============================================ */


/* ============================================
   FOOTER
   ============================================ */

.footer-links ul{
    margin: 0;;
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-end;
    gap: 10px;
}

@media (max-width:767px){
    .footer-links ul{
    justify-content: center;
    }
}

.footer-links ul li{
    margin: 0;
    padding: 0;
}

.footer-links h3{
    font-weight: 600;
    margin: 0 0 10px 0;
}

.footer-links ul li a{
    padding: 15px;
    background-color: rgba(0,0,0,.2);
    border-radius: 10px;
    display: block;
}

.footer-links ul li a:hover{
    background-color: rgba(255,255,255,.2);
    scale: calc(1.1);
}

/* ============================================
   HOMEPAGE
   ============================================ */
