@charset "UTF-8";

.site-header{
  background:rgba(255,255,255,.55)!important;
  -webkit-backdrop-filter:blur(18px) saturate(160%);
  backdrop-filter:blur(18px) saturate(160%);
  border-bottom:1px solid rgba(255,255,255,.5)!important;
  box-shadow:0 8px 32px rgba(1,1,14,.06);
}

.button,.button-light,.button-dark{
  display:inline-flex!important;align-items:center;justify-content:center;gap:12px;
  padding:17px 30px!important;border-radius:0!important;
  font:600 11px var(--neue,sans-serif)!important;letter-spacing:.12em;text-transform:uppercase;
  text-decoration:none;cursor:pointer;position:relative;overflow:hidden;
  -webkit-backdrop-filter:blur(16px) saturate(115%);backdrop-filter:blur(16px) saturate(115%);
  transition:transform .35s cubic-bezier(.2,.9,.25,1),box-shadow .35s,background .35s;
}
/* Boutons clairs (fonds sombres) : verre blanc lisible, texte noir */
.button,.button-light{background:rgba(255,255,255,.9)!important;border:1px solid rgba(255,255,255,.9)!important;color:#01010e!important;box-shadow:0 10px 28px rgba(1,1,14,.28),inset 0 1px 0 rgba(255,255,255,.9)}
/* Boutons foncés (fonds clairs) : verre sombre lisible, texte blanc */
.button-dark{background:rgba(1,1,14,.88)!important;border:1px solid rgba(1,1,14,.9)!important;color:#fff!important;box-shadow:0 10px 28px rgba(1,1,14,.2),inset 0 1px 0 rgba(255,255,255,.16)}
.button::after,.button-light::after,.button-dark::after{
  content:"";position:absolute;top:0;left:-75%;width:40%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.6),transparent);
  transform:skewX(-18deg);pointer-events:none;
}
.button:hover::after,.button-light:hover::after,.button-dark:hover::after{animation:btnSweep .7s ease forwards}
@keyframes btnSweep{from{left:-75%}to{left:150%}}
.button:hover,.button-light:hover,.button-dark:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 34px rgba(1,1,14,.22),inset 0 1px 0 rgba(255,255,255,.55);
}
.button span,.button-light span,.button-dark span{display:inline-block;transition:transform .3s cubic-bezier(.16,.7,.3,1)}
.button:hover span,.button-light:hover span,.button-dark:hover span{transform:translate(3px,-3px)}

/* CTA inline (pages inscription) — même effet glass que les boutons du site */
.inline-cta{position:relative!important;overflow:hidden;box-shadow:0 10px 28px rgba(1,1,14,.2),inset 0 1px 0 rgba(255,255,255,.16);transition:background .25s,color .25s,transform .25s,box-shadow .25s!important}
.inline-cta::after{content:"";position:absolute;top:0;left:-75%;width:40%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.6),transparent);transform:skewX(-18deg);pointer-events:none}
.inline-cta:hover::after{animation:btnSweep .7s ease forwards}
.inline-cta:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(1,1,14,.22),inset 0 1px 0 rgba(255,255,255,.4)}
.inline-cta:hover span{transform:translate(3px,-3px)!important}

.nouv-card{
  position:relative;
  background:rgba(255,255,255,.45)!important;
  -webkit-backdrop-filter:blur(16px) saturate(150%);
  backdrop-filter:blur(16px) saturate(150%);
  border:1px solid rgba(255,255,255,.6)!important;
  box-shadow:0 12px 40px rgba(1,1,14,.08),inset 0 1px 0 rgba(255,255,255,.6);
  overflow:hidden;
}
.nouv-card::after{
  content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-18deg);pointer-events:none;
}
.nouv-card:hover::after{animation:nouvSweep .8s ease forwards}
@keyframes nouvSweep{from{left:-60%}to{left:130%}}
@keyframes glassSweep{from{left:-60%}to{left:130%}}

.glass-info-banner{
  background:rgba(245,240,232,.55)!important;
  -webkit-backdrop-filter:blur(14px) saturate(150%);
  backdrop-filter:blur(14px) saturate(150%);
  border-bottom:1px solid rgba(255,255,255,.5);
  box-shadow:0 8px 24px rgba(1,1,14,.05);
}

.discipline-card{
  position:relative;overflow:hidden;
}
.discipline-card::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,rgba(255,255,255,.14),transparent 40%);
  -webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);
  opacity:0;transition:opacity .5s;pointer-events:none;
}
.discipline-card:hover::after{opacity:1}

.stat-card,.value-card,.step-card,.coach-card,.review-card,.map-card,.info-card{
  position:relative;overflow:hidden;
  -webkit-backdrop-filter:blur(12px) saturate(150%);
  backdrop-filter:blur(12px) saturate(150%);
  box-shadow:0 10px 34px rgba(1,1,14,.07),inset 0 1px 0 rgba(255,255,255,.5);
  transition:transform .4s cubic-bezier(.2,.9,.25,1),box-shadow .4s;
}
.stat-card:hover,.value-card:hover,.step-card:hover,.coach-card:hover,.review-card:hover,.map-card:hover,.info-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 48px rgba(1,1,14,.14),inset 0 1px 0 rgba(255,255,255,.6);
}
.stat-card::after,.value-card::after,.step-card::after,.coach-card::after,.review-card::after{
  content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.5),transparent);
  transform:skewX(-18deg);pointer-events:none;
}
.stat-card:hover::after,.value-card:hover::after,.step-card:hover::after,.coach-card:hover::after,.review-card:hover::after{animation:glassSweep .8s ease forwards}

.footer-cta,.cta-block,.center-cta,.discipline-cta,.register,.social,.affiliation{
  position:relative;overflow:hidden;
}
.footer-cta::before,.cta-block::before,.center-cta::before,.discipline-cta::before,.register::before{
  content:"";position:absolute;top:-40%;right:-10%;width:420px;height:420px;
  background:radial-gradient(circle,rgba(255,255,255,.16),transparent 70%);
  -webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);
  pointer-events:none;animation:glassFloat 14s ease-in-out infinite;
}
@keyframes glassFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,30px)}}

.gallery-item,.portrait-row img,.coach-card img{
  transition:transform .6s cubic-bezier(.2,.9,.25,1),filter .5s;
}
.gallery-item:hover,.coach-card:hover img{transform:scale(1.04)}

.schedule-card,.planner-card,.discipline-schedule table,.tarif-card,.price-card{
  -webkit-backdrop-filter:blur(14px) saturate(150%);
  backdrop-filter:blur(14px) saturate(150%);
  background:rgba(255,255,255,.4);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 10px 34px rgba(1,1,14,.07);
}

.site-footer{
  position:relative;
  -webkit-backdrop-filter:blur(10px) saturate(140%);
  backdrop-filter:blur(10px) saturate(140%);
}

.nouv-group--hl,.nouv-split>div{
  -webkit-backdrop-filter:blur(8px) saturate(140%);
  backdrop-filter:blur(8px) saturate(140%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5);
}

.discipline-hero .hero-overlay,.page-hero .hero-overlay,.hero .hero-overlay{
  -webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);
}

/* ══════════ PLANNING — refonte liquid glass ══════════ */
.planner{padding-top:96px}
.planner-head h2{margin-top:14px}

/* Panneau de filtres en verre */
.plan-filters{
  border:1px solid rgba(255,255,255,.6)!important;
  border-radius:20px;
  background:rgba(255,255,255,.5)!important;
  -webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);
  box-shadow:0 14px 44px rgba(1,1,14,.07),inset 0 1px 0 rgba(255,255,255,.8);
  padding:22px 24px!important;
  margin-bottom:14px!important;
  gap:16px!important;
}
.chip{
  background:rgba(255,255,255,.55)!important;
  border:1px solid rgba(1,1,14,.12)!important;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  transition:transform .2s cubic-bezier(.2,.9,.25,1),background .2s,border-color .2s,box-shadow .2s;
}
.chip:hover{border-color:rgba(1,1,14,.4)!important;box-shadow:0 6px 16px rgba(1,1,14,.08)}
.chip.active{background:var(--black)!important;color:#fff!important;border-color:var(--black)!important}
.chip.dot.active{background:var(--c)!important;border-color:var(--c)!important}
.age-slider-wrap{background:rgba(255,255,255,.55)!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1.5px solid rgba(1,1,14,.7)!important}
.age-step{background:rgba(255,255,255,.7)!important}
.age-step:hover{background:var(--black)!important}

/* Note + compteur */
.planner-note{
  display:flex;align-items:center;gap:10px;
  background:rgba(1,1,14,.04);border:1px solid rgba(1,1,14,.06);
  border-radius:12px;padding:12px 16px!important;margin:0 0 10px!important;
}
.planner-note::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--muted);flex:none}
.schedule-count{margin:0 0 24px!important}

/* Rail des jours */
.day-block{
  grid-template-columns:158px 1fr!important;
  gap:28px!important;
  padding:32px 0!important;
  border-bottom:1px solid rgba(1,1,14,.08)!important;
}
.day-label{
  position:sticky;top:104px;align-self:start;
  font-size:24px!important;color:var(--black);
}
.day-label::after{
  content:"";display:block;width:34px;height:3px;border-radius:2px;
  background:var(--black);margin-top:14px;
}

/* Cartes de cours — verre + accent discipline */
.pcard{
  position:relative;overflow:hidden;
  background:rgba(255,255,255,.55)!important;
  -webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);
  border:1px solid rgba(255,255,255,.65)!important;
  border-radius:18px!important;
  padding:20px 20px 18px 22px!important;
  box-shadow:0 10px 30px rgba(1,1,14,.06),inset 0 1px 0 rgba(255,255,255,.7);
}
.pcard::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:var(--c,var(--black));border-radius:4px 0 0 4px;
}
.pcard::after{
  content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-18deg);pointer-events:none;
}
.pcard:hover{
  transform:translateY(-5px);
  border-color:rgba(255,255,255,.9)!important;
  box-shadow:0 20px 46px color-mix(in srgb,var(--c,#01010e) 26%,transparent),inset 0 1px 0 rgba(255,255,255,.85)!important;
}
.pcard:hover::after{animation:glassSweep .8s ease forwards}
.pbadge{box-shadow:0 3px 10px color-mix(in srgb,var(--c,#01010e) 30%,transparent)}
.pbadge.ghost{box-shadow:none;background:rgba(255,255,255,.6)}
.pcard-meta{margin-top:14px!important;font-weight:500}

/* Modale — carte en verre */
.cm-card{
  border:1px solid rgba(255,255,255,.5);
  box-shadow:0 40px 90px rgba(1,1,14,.4),inset 0 1px 0 rgba(255,255,255,.6)!important;
}
.cm-backdrop{background:rgba(1,1,14,.5)!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)!important}

@media(max-width:850px){
  .planner{padding-top:64px}
  .day-block{grid-template-columns:1fr!important;gap:14px!important}
  .day-label{position:static;top:auto}
  .day-label::after{display:none}
}

/* ══════════ Touches liquid glass supplémentaires ══════════ */

/* Coachs Muay Thaï : 5 par ligne sur PC, 2×2 en mobile */
@media(min-width:851px){.coach-grid-2{grid-template-columns:repeat(5,1fr)!important;gap:18px!important}}

/* Photos coachs & équipe — cadre verre + reflet à l'entrée souris */
.coach-photo,.member-photo{
  position:relative;overflow:hidden;border-radius:14px!important;
  border:1px solid rgba(255,255,255,.55)!important;
  box-shadow:0 10px 30px rgba(1,1,14,.08),inset 0 1px 0 rgba(255,255,255,.5);
  transition:transform .4s cubic-bezier(.2,.9,.25,1),box-shadow .4s;
}
.coach-photo::after,.member-photo::after{
  content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-18deg);pointer-events:none;z-index:2;
}
.member:hover .member-photo,.coach-grid article:hover .coach-photo{
  transform:translateY(-5px);box-shadow:0 20px 46px rgba(1,1,14,.16),inset 0 1px 0 rgba(255,255,255,.6);
}
.coach-grid article:hover .coach-photo::after,.member:hover .member-photo::after{animation:glassSweep .8s ease forwards}

/* Cartes tarifs / pour qui — léger lift + reflet à l'entrée */
.access-cards article{position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.2,.9,.25,1),box-shadow .4s}
.access-cards article::after{
  content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.35),transparent);
  transform:skewX(-18deg);pointer-events:none;
}
.access-cards article:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(1,1,14,.14);z-index:1}
.access-cards article:hover::after{animation:glassSweep .9s ease forwards}

/* Bouton header — verre */
.nav-cta{
  -webkit-backdrop-filter:blur(12px) saturate(120%);backdrop-filter:blur(12px) saturate(120%);
  background:rgba(1,1,14,.9)!important;color:#fff!important;border:1px solid rgba(1,1,14,.9)!important;
  box-shadow:0 6px 18px rgba(1,1,14,.18),inset 0 1px 0 rgba(255,255,255,.14);
  transition:transform .3s cubic-bezier(.2,.9,.25,1),box-shadow .3s,background .3s;
}
.nav-cta:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(1,1,14,.28)}

/* Pastilles moyens de paiement — verre */
.pay-track span{
  -webkit-backdrop-filter:blur(10px) saturate(130%);backdrop-filter:blur(10px) saturate(130%);
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.35)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25);
}

/* Tuiles logos affiliations — verre */
.affil-logo{
  background:rgba(255,255,255,.5)!important;
  -webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);
  border:1px solid rgba(255,255,255,.6)!important;
  box-shadow:0 10px 30px rgba(1,1,14,.06),inset 0 1px 0 rgba(255,255,255,.6);
  border-radius:16px;transition:transform .4s cubic-bezier(.2,.9,.25,1),box-shadow .4s;
}
.affil-logo:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(1,1,14,.12)}

/* Lignes horaires disciplines — surbrillance verre au survol */
.course-list>div{transition:background .3s,padding .3s,border-radius .3s}
.course-list>div:hover{
  background:rgba(255,255,255,.5);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border-radius:12px;padding-left:14px!important;padding-right:14px!important;
  box-shadow:0 8px 22px rgba(1,1,14,.06);
}

/* Bandeau partenaire — verre */
.gizady-band{
  background:rgba(255,255,255,.55)!important;
  -webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 8px 26px rgba(1,1,14,.05);
}

/* Section inscription disciplines — halo doux intégré au fond (plus de coupure) */
.discipline-cta::before{display:none!important}
.discipline-cta{
  background:
    radial-gradient(620px circle at 86% 16%, rgba(255,255,255,.09), rgba(1,1,14,0) 60%),
    radial-gradient(520px circle at 6% 92%, rgba(255,255,255,.05), rgba(1,1,14,0) 60%),
    var(--black)!important;
}
/* Bouton retour aux disciplines */
.disc-back-btn{display:flex;justify-content:center;padding:56px 0 100px}

/* Logo 20 ans header (mobile) — garder le ratio, ne pas étirer */
@media(max-width:850px){
  .brand img.brand-anniv{width:auto!important;height:44px!important;object-fit:contain}
}

