.perm-public{max-width:950px;margin:3rem auto 0;padding:2rem 1.4rem 1.6rem;box-sizing:border-box;background:#fafbfc;border-radius:13px;box-shadow:0 4px 24px #05103912;width:calc(100% - 2.4rem)}.perm-public-entete{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 2rem;margin-bottom:1.4rem}.perm-surtitre{display:flex;align-items:center;gap:.45em;margin:0 0 .3rem;color:var(--accent-red);font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.perm-public h2{color:var(--main-blue);font-size:1.35rem;font-weight:800;margin:0 0 .4rem}.perm-intro{color:#556;margin:0;font-size:.96rem;line-height:1.55;max-width:34rem}.perm-statut{display:inline-flex;align-items:center;gap:.65em;margin:0;padding:.6em 1.1em;border-radius:var(--radius-btn);background:#fff;box-shadow:var(--shadow-sm);color:var(--text-dark);font-size:.93rem;line-height:1.4;max-width:100%}.perm-statut strong{color:var(--main-blue)}.perm-statut-point{flex-shrink:0;width:.7em;height:.7em;border-radius:50%;background:#b6bccb}.perm-statut[data-etat=present]{background:var(--main-blue);color:#fff}.perm-statut[data-etat=present] strong{color:#fff}.perm-statut[data-etat=present] .perm-statut-point{background:#3ddc84;box-shadow:0 0 #3ddc8499;animation:permPulsation 1.8s ease-out infinite}.perm-statut[data-etat=prochaine] .perm-statut-point{background:var(--accent-red)}.perm-statut[data-etat=chargement] .perm-statut-point{animation:permClignote 1s ease-in-out infinite alternate}@keyframes permPulsation{to{box-shadow:0 0 0 .6em #3ddc8400}}@keyframes permClignote{to{opacity:.3}}.perm-ruban-cadre{display:flex;gap:.5rem;align-items:stretch}.perm-ruban-echelle{display:flex;flex-direction:column;justify-content:space-between;padding:3.05rem 0 .35rem;color:#8a90a2;font-size:.68rem;font-weight:600;white-space:nowrap}.perm-ruban{flex:1;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(2.35rem,1fr);gap:.3rem;overflow-x:auto;scroll-snap-type:x proximity;padding:.35rem .2rem .6rem;scrollbar-width:thin}.perm-jour{scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.35rem .15rem;border:2px solid transparent;border-radius:10px;background:#fff;font-family:inherit;color:var(--text-dark);cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.perm-jour:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.perm-jour[aria-pressed=true]{border-color:var(--main-blue);box-shadow:var(--shadow-md)}.perm-jour--weekend{background:#eef1f8}.perm-jour--mois{position:relative}.perm-jour--mois:before{content:"";position:absolute;left:-.25rem;top:.4rem;bottom:.4rem;border-left:1.5px dashed #c4c9d6}.perm-jour-nom{font-size:.66rem;font-weight:600;text-transform:uppercase;color:#8a90a2}.perm-jour-num{font-size:1rem;font-weight:800;line-height:1.1}.perm-jour--aujourdhui .perm-jour-num{color:#fff;background:var(--accent-red);border-radius:50%;width:1.6em;height:1.6em;display:grid;place-items:center;font-size:.9rem}.perm-jour-barre{position:relative;width:.7rem;height:7.5rem;margin-top:.3rem;border-radius:.35rem;background:repeating-linear-gradient(to bottom,#e3e7f0 0 calc(100% / 14 - 1px),#f3f5fa calc(100% / 14 - 1px) calc(100% / 14));overflow:hidden}.perm-segment{position:absolute;left:0;right:0;background:linear-gradient(180deg,#0a2070,var(--main-blue));border-radius:.3rem;min-height:3px}.perm-maintenant{position:absolute;left:-2px;right:-2px;height:2px;background:var(--accent-red);box-shadow:0 0 0 1px #fff}.perm-jour--squelette{height:10.4rem;background:linear-gradient(90deg,#eef1f8,#f8f9fc,#eef1f8);background-size:200% 100%;animation:permSquelette 1.3s linear infinite}@keyframes permSquelette{to{background-position:-200% 0}}.perm-detail{margin-top:1rem;padding:1.1rem 1.2rem;background:#fff;border-radius:var(--radius-card);border-left:4px solid var(--accent-red);min-height:4.5rem}.perm-detail:empty{display:none}.perm-detail h3{margin:0 0 .35rem;color:var(--main-blue);font-size:1.05rem;font-weight:800}.perm-detail-resume,.perm-detail-vide{margin:0 0 .8rem;color:#556;font-size:.93rem;line-height:1.5}.perm-detail-vide{margin:0}.perm-detail-liste{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.55rem}.perm-detail-liste li{display:inline-flex;align-items:center;gap:.55em;padding:.35em .9em .35em .4em;border-radius:var(--radius-btn);background:#f1f3f9;font-size:.93rem}.perm-detail-heure{order:3;color:#556;font-weight:600}.perm-detail-avatar{display:grid;place-items:center;width:1.9em;height:1.9em;border-radius:50%;background:var(--main-blue);color:#fff;font-weight:800;font-size:.85em}.perm-detail-nom{font-weight:700;color:var(--main-blue)}.perm-contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem 1.5rem;margin:1rem 0 0;padding:.85rem 1.1rem;border-radius:var(--radius-card);background:#eef1f8}.perm-contact p{flex:1 1 18rem;margin:0;color:var(--text-dark);font-size:.93rem;line-height:1.55}.perm-contact-bouton{display:inline-flex;align-items:center;gap:.5em;padding:.55em 1.3em;border-radius:var(--radius-btn);background:var(--main-blue);color:#fff;font-size:.93rem;font-weight:700;white-space:nowrap;transition:background var(--transition-mid),transform var(--transition-fast)}.perm-contact-bouton:hover,.perm-contact-bouton:focus-visible{background:var(--accent-red);text-decoration:none}.perm-contact-bouton span{transition:transform var(--transition-fast)}.perm-contact-bouton:hover span{transform:translateY(2px)}.perm-lien-membres{margin:1.1rem 0 0;text-align:right;font-size:.9rem;color:#556}.perm-lien-membres a{color:#01696f;font-weight:700}@media(max-width:560px){.perm-public{padding:1.5rem 1rem 1.2rem}.perm-ruban-echelle{display:none}.perm-contact-bouton{width:100%;justify-content:center}.perm-lien-membres{text-align:left}}.contact-section{scroll-margin-top:1.5rem;display:flex;justify-content:center;align-items:flex-start;gap:3rem;max-width:950px;margin:3rem auto 2.5rem;padding:0 1.2rem;flex-wrap:wrap}.contact-coordonnees{flex:1 1 300px;background:#fafbfc;border-radius:13px;box-shadow:0 4px 24px #05103912;padding:2.1rem 1.4rem 1.3rem;margin-bottom:1.5rem;min-width:260px}.contact-coordonnees h2{color:#051039;font-size:1.19rem;font-weight:800;margin-bottom:1.05rem}.contact-coordonnees ul{list-style:none;padding:0;margin:0;font-size:1.09rem;display:flex;flex-direction:column;gap:1.05em}.contact-coordonnees li{display:flex;align-items:center;gap:.8em;color:#222;font-weight:500}.contact-coordonnees a{color:#051039;font-weight:700;text-decoration:none;transition:color .13s}.contact-coordonnees a:hover,.contact-coordonnees a:focus-visible{color:#051039;text-decoration:underline}.contact-formulaire{flex:2 1 380px;background:#fff;border-radius:14px;box-shadow:0 3px 18px #05103914;padding:2.1rem 1.4rem 1.3rem;min-width:270px}.contact-formulaire h2{color:#051039;text-align:center;font-size:1.18rem;margin-bottom:1.3em;font-weight:800}.contact-sous-titre{display:flex;align-items:center;gap:.5em;color:#051039;font-size:1.05rem;font-weight:800;margin:1.8rem 0 .6rem}.contact-horaires{color:#333;font-size:1rem;line-height:1.6;margin:0 0 .7em}.contact-horaires-note{color:#667;font-size:.92rem;line-height:1.55;margin:0}.form-facultatif{color:#667;font-weight:400;font-size:.9em}.form-obligatoire{color:#667;font-size:.88rem;margin:-.3em 0 0}.form-rgpd{margin-top:1.4rem;padding-top:1.1rem;border-top:1px solid #e6e9f3;font-size:.87rem;line-height:1.6;color:#556}.form-rgpd a{color:#01696f;font-weight:600;text-decoration:underline}.contact-carte{max-width:950px;margin:0 auto 3.5rem;padding:0 1.2rem}.contact-carte h2{color:#051039;font-size:1.19rem;font-weight:800;margin-bottom:.4rem}.contact-carte-adresse{color:#556;margin:0 0 1rem}.contact-carte-cadre{border-radius:13px;overflow:hidden;box-shadow:0 4px 24px #05103917;line-height:0}.contact-carte-cadre iframe{width:100%;height:380px;border:0;display:block}.contact-carte-lien{margin:.8rem 0 0;font-size:.95rem}.contact-carte-lien a{color:#01696f;font-weight:700;text-decoration:none}.contact-carte-lien a:hover,.contact-carte-lien a:focus-visible{text-decoration:underline}@media(max-width:560px){.contact-carte-cadre iframe{height:300px}}
