1SIDE™ — La prothèse Amovible Clipsée · Dentalight *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } :root { --violet: #59058D; --violet-dark: #3d0460; --violet-light: #7a1ab0; --violet-pale: #f5eefa; --gold: #C9A84C; --gold-light: #e8c97a; --white: #ffffff; --off-white: #fafafa; --gray-light: #f4f4f4; --gray-mid: #e0e0e0; --text-main: #1a1a1a; --text-secondary: #555; --text-muted: #888; --radius-sm: 6px; --radius-md: 12px; --radius-lg: 20px; } html { scroll-behavior: smooth; } body { font-family: 'Inter', sans-serif; color: var(--text-main); background: var(--white); line-height: 1.65; font-size: 16px; } .display { font-family: 'Sora', sans-serif; } /* NAV */ nav { position: fixed; top: 0; left: 0; right: 0; z-index: 100; background: rgba(89,5,141,0.97); backdrop-filter: blur(8px); padding: 0 2rem; height: 64px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,0.1); } .nav-logo { display: flex; align-items: center; gap: 10px; text-decoration: none; color: white; } .nav-logo-badge { background: var(--gold); color: var(--violet-dark); font-family: 'Sora', sans-serif; font-weight: 700; font-size: 13px; padding: 3px 10px; border-radius: 4px; letter-spacing: 0.04em; } .nav-logo-lab { font-size: 13px; color: rgba(255,255,255,0.7); font-weight: 300; letter-spacing: 0.02em; } .nav-cta { background: var(--gold); color: var(--violet-dark); font-weight: 600; font-size: 13px; padding: 8px 18px; border-radius: var(--radius-sm); text-decoration: none; transition: background 0.2s; } .nav-cta:hover { background: var(--gold-light); } /* HERO */ .hero { min-height: 100vh; background: linear-gradient(135deg, var(--violet-dark) 0%, var(--violet) 50%, #7a1ab0 100%); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 100px 2rem 80px; text-align: center; position: relative; overflow: hidden; } .hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse at 30% 60%, rgba(201,168,76,0.12) 0%, transparent 60%), radial-gradient(ellipse at 80% 20%, rgba(255,255,255,0.05) 0%, transparent 50%); pointer-events: none; } .hero-eyebrow { display: inline-flex; align-items: center; gap: 8px; background: rgba(255,255,255,0.1); border: 1px solid rgba(201,168,76,0.4); color: var(--gold-light); font-size: 12px; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; padding: 6px 16px; border-radius: 100px; margin-bottom: 2rem; } .hero-eyebrow::before { content: ''; width: 6px; height: 6px; background: var(--gold); border-radius: 50%; } .hero h1 { font-family: 'Sora', sans-serif; font-size: clamp(2.4rem, 6vw, 4.2rem); font-weight: 700; color: white; line-height: 1.1; max-width: 800px; margin-bottom: 1.5rem; letter-spacing: -0.02em; } .hero h1 em { font-style: normal; color: var(--gold-light); } .hero-sub { font-size: 1.1rem; color: rgba(255,255,255,0.75); max-width: 560px; margin-bottom: 2.5rem; font-weight: 300; line-height: 1.7; } .hero-pills { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-bottom: 2.5rem; } .hero-pill { background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.2); color: white; font-size: 13px; padding: 6px 14px; border-radius: 100px; font-weight: 400; } .hero-ctas { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; } .btn-primary { background: var(--gold); color: var(--violet-dark); font-weight: 600; font-size: 15px; padding: 14px 28px; border-radius: var(--radius-sm); text-decoration: none; transition: background 0.2s, transform 0.15s; display: inline-block; } .btn-primary:hover { background: var(--gold-light); transform: translateY(-1px); } .btn-ghost { background: transparent; border: 1.5px solid rgba(255,255,255,0.4); color: white; font-weight: 500; font-size: 15px; padding: 13px 28px; border-radius: var(--radius-sm); text-decoration: none; transition: border-color 0.2s, background 0.2s; display: inline-block; } .btn-ghost:hover { border-color: white; background: rgba(255,255,255,0.08); } .hero-scroll { margin-top: 3rem; display: flex; flex-direction: column; align-items: center; gap: 6px; color: rgba(255,255,255,0.4); font-size: 12px; letter-spacing: 0.08em; } .hero-scroll-dot { width: 1px; height: 40px; background: rgba(255,255,255,0.2); } /* PARTENAIRES */ .partners { background: var(--off-white); border-bottom: 1px solid var(--gray-mid); padding: 2rem; display: flex; align-items: center; justify-content: center; gap: 2.5rem; flex-wrap: wrap; } .partners-label { font-size: 12px; color: var(--text-muted); letter-spacing: 0.1em; text-transform: uppercase; font-weight: 500; } .partner-tag { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; color: var(--violet); } .partner-tag svg { flex-shrink: 0; } /* SECTIONS */ section { padding: 80px 2rem; } .container { max-width: 1060px; margin: 0 auto; } .section-eyebrow { font-size: 11px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--violet); margin-bottom: 0.75rem; display: flex; align-items: center; gap: 8px; } .section-eyebrow::before { content: ''; width: 18px; height: 2px; background: var(--gold); border-radius: 2px; } h2.section-title { font-family: 'Sora', sans-serif; font-size: clamp(1.6rem, 3.5vw, 2.4rem); font-weight: 700; color: var(--text-main); line-height: 1.2; margin-bottom: 1rem; letter-spacing: -0.01em; } .section-lead { font-size: 1.05rem; color: var(--text-secondary); max-width: 620px; line-height: 1.75; margin-bottom: 3rem; } /* CONCEPT */ .concept-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: start; } .concept-visual { background: var(--violet); border-radius: var(--radius-lg); padding: 2.5rem; display: flex; flex-direction: column; gap: 1rem; position: relative; overflow: hidden; } .concept-visual::before { content: ''; position: absolute; top: -40px; right: -40px; width: 180px; height: 180px; background: rgba(201,168,76,0.12); border-radius: 50%; } .concept-badge { background: var(--gold); color: var(--violet-dark); font-family: 'Sora', sans-serif; font-weight: 700; font-size: 28px; padding: 14px 20px; border-radius: var(--radius-md); display: inline-block; letter-spacing: -0.02em; align-self: flex-start; } .concept-visual-text { color: white; font-family: 'Sora', sans-serif; font-size: 1.3rem; font-weight: 600; line-height: 1.3; } .concept-visual-sub { color: rgba(255,255,255,0.65); font-size: 14px; line-height: 1.6; } .concept-tag { display: inline-block; background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.2); color: rgba(255,255,255,0.85); font-size: 12px; padding: 5px 12px; border-radius: 100px; margin-top: 0.5rem; } .concept-points { display: flex; flex-direction: column; gap: 1.25rem; } .concept-point { display: flex; gap: 1rem; align-items: flex-start; } .concept-point-icon { width: 36px; height: 36px; background: var(--violet-pale); border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--violet); font-size: 17px; } .concept-point-title { font-weight: 600; font-size: 15px; margin-bottom: 3px; } .concept-point-text { font-size: 14px; color: var(--text-secondary); line-height: 1.55; } /* AVANTAGES */ .avantages { background: var(--violet-pale); } .avantages-tabs { display: flex; gap: 8px; margin-bottom: 2.5rem; background: rgba(89,5,141,0.08); padding: 6px; border-radius: var(--radius-md); display: inline-flex; } .avantages-tab { padding: 8px 20px; border-radius: var(--radius-sm); font-size: 14px; font-weight: 500; cursor: pointer; color: var(--violet); transition: background 0.2s, color 0.2s; border: none; background: none; } .avantages-tab.active { background: var(--violet); color: white; } .avantages-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; } .avantage-card { background: white; border-radius: var(--radius-md); padding: 1.5rem; border: 1px solid rgba(89,5,141,0.1); transition: transform 0.2s, box-shadow 0.2s; } .avantage-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(89,5,141,0.1); } .avantage-icon { width: 44px; height: 44px; background: var(--violet-pale); border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; color: var(--violet); font-size: 20px; margin-bottom: 1rem; } .avantage-title { font-weight: 600; font-size: 15px; margin-bottom: 6px; color: var(--text-main); } .avantage-text { font-size: 13px; color: var(--text-secondary); line-height: 1.55; } .avantages-panel { display: none; } .avantages-panel.active { display: block; } /* PROCESSUS */ .processus-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 0; position: relative; margin-top: 1rem; } .step { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 2rem 1.5rem; position: relative; } .step:not(:last-child)::after { content: ''; position: absolute; top: 2.75rem; right: 0; width: 1px; height: 44px; background: var(--gray-mid); } .step-number { width: 52px; height: 52px; background: var(--violet); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: 'Sora', sans-serif; font-size: 18px; font-weight: 700; color: white; margin-bottom: 1rem; flex-shrink: 0; } .step-title { font-weight: 600; font-size: 14px; margin-bottom: 6px; color: var(--text-main); } .step-text { font-size: 13px; color: var(--text-secondary); line-height: 1.5; } .step-badge { margin-top: 10px; display: inline-block; background: var(--violet-pale); color: var(--violet); font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 100px; } /* COMPARATIF */ .comparatif { background: var(--gray-light); } .compare-table { width: 100%; border-collapse: separate; border-spacing: 0; border-radius: var(--radius-md); overflow: hidden; background: white; font-size: 14px; } .compare-table thead th { padding: 14px 16px; text-align: center; font-weight: 700; font-size: 13px; border-bottom: 2px solid var(--gray-mid); background: white; } .compare-table thead th:first-child { text-align: left; } .compare-table thead th.highlight { background: var(--violet); color: white; } .compare-table thead th.highlight span { display: block; font-size: 10px; font-weight: 400; opacity: 0.75; margin-top: 2px; } .compare-table tbody tr:nth-child(even) { background: var(--off-white); } .compare-table tbody tr:nth-child(even) td.highlight { background: #f0e8f8; } .compare-table td { padding: 12px 16px; text-align: center; border-bottom: 1px solid var(--gray-mid); color: var(--text-secondary); font-size: 13px; } .compare-table td:first-child { text-align: left; font-weight: 500; color: var(--text-main); font-size: 13px; } .compare-table td.highlight { background: #f8f4fc; } .check { color: #16a34a; font-size: 17px; } .cross { color: #dc2626; font-size: 17px; } .partial { color: #d97706; font-size: 17px; } /* CAS CLINIQUE */ .cas-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: start; } .cas-images { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; } .cas-img-placeholder { aspect-ratio: 1; background: var(--violet-pale); border-radius: var(--radius-sm); border: 2px solid rgba(89,5,141,0.15); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; color: var(--violet); font-size: 12px; text-align: center; padding: 8px; } .cas-img-placeholder svg { opacity: 0.5; } .cas-info { display: flex; flex-direction: column; gap: 1.5rem; } .cas-badge { display: inline-block; background: var(--gold); color: var(--violet-dark); font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; padding: 5px 12px; border-radius: 100px; align-self: flex-start; } .cas-detail { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; } .cas-item { display: flex; flex-direction: column; gap: 3px; } .cas-label { font-size: 11px; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.1em; font-weight: 600; } .cas-value { font-size: 14px; font-weight: 600; color: var(--text-main); } .cas-timeline { display: flex; flex-direction: column; gap: 10px; background: var(--off-white); border: 1px solid var(--gray-mid); border-radius: var(--radius-md); padding: 1.25rem; } .cas-timeline-item { display: flex; gap: 12px; align-items: center; font-size: 13px; } .cas-timeline-dot { width: 8px; height: 8px; background: var(--violet); border-radius: 50%; flex-shrink: 0; } .cas-timeline-label { color: var(--text-secondary); } .cas-timeline-val { font-weight: 600; color: var(--text-main); margin-left: auto; } /* TARIFS */ .tarifs { background: var(--off-white); } .tarifs-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; max-width: 680px; margin: 0 auto 2rem; } .tarif-card { background: white; border: 1.5px solid var(--gray-mid); border-radius: var(--radius-md); padding: 2rem 1.5rem; text-align: center; transition: border-color 0.2s, transform 0.2s; position: relative; } .tarif-card:hover { border-color: var(--violet); transform: translateY(-2px); } .tarif-card.featured { border-color: var(--violet); box-shadow: 0 0 0 1px var(--violet); } .tarif-featured-badge { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: var(--violet); color: white; font-size: 11px; font-weight: 600; padding: 3px 14px; border-radius: 100px; white-space: nowrap; letter-spacing: 0.04em; } .tarif-qty { font-family: 'Sora', sans-serif; font-size: 1.1rem; font-weight: 700; color: var(--violet); margin-bottom: 0.5rem; } .tarif-price { font-family: 'Sora', sans-serif; font-size: 2.2rem; font-weight: 700; color: var(--text-main); line-height: 1; margin-bottom: 0.25rem; } .tarif-unit { font-size: 13px; color: var(--text-muted); } .tarif-note { max-width: 600px; margin: 0 auto; text-align: center; font-size: 13px; color: var(--text-muted); line-height: 1.65; } /* FORMULAIRE */ .form-section { background: var(--violet); } .form-section .section-eyebrow { color: var(--gold-light); } .form-section .section-eyebrow::before { background: var(--gold); } .form-section h2.section-title { color: white; } .form-section .section-lead { color: rgba(255,255,255,0.7); } .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: start; } .form-reassure { display: flex; flex-direction: column; gap: 1.25rem; } .form-reassure-item { display: flex; gap: 12px; align-items: flex-start; } .form-reassure-icon { width: 36px; height: 36px; background: rgba(255,255,255,0.12); border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; color: var(--gold-light); font-size: 16px; flex-shrink: 0; } .form-reassure-title { font-weight: 600; font-size: 14px; color: white; margin-bottom: 3px; } .form-reassure-text { font-size: 13px; color: rgba(255,255,255,0.6); line-height: 1.5; } form { background: white; border-radius: var(--radius-lg); padding: 2rem; display: flex; flex-direction: column; gap: 1rem; } .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; } .form-group { display: flex; flex-direction: column; gap: 6px; } label { font-size: 13px; font-weight: 500; color: var(--text-main); } input, select, textarea { border: 1.5px solid var(--gray-mid); border-radius: var(--radius-sm); padding: 10px 14px; font-size: 14px; font-family: 'Inter', sans-serif; color: var(--text-main); background: white; transition: border-color 0.2s; width: 100%; } input:focus, select:focus, textarea:focus { outline: none; border-color: var(--violet); box-shadow: 0 0 0 3px rgba(89,5,141,0.1); } textarea { resize: vertical; min-height: 90px; } .form-submit { background: var(--violet); color: white; font-weight: 600; font-size: 15px; padding: 13px; border-radius: var(--radius-sm); border: none; cursor: pointer; transition: background 0.2s; width: 100%; font-family: 'Inter', sans-serif; } .form-submit:hover { background: var(--violet-dark); } .form-legal { font-size: 11px; color: var(--text-muted); text-align: center; line-height: 1.5; } /* FOOTER */ footer { background: var(--violet-dark); color: rgba(255,255,255,0.6); padding: 2.5rem; display: flex; flex-wrap: wrap; gap: 1.5rem; justify-content: space-between; align-items: center; font-size: 13px; } .footer-links { display: flex; gap: 1.5rem; flex-wrap: wrap; } .footer-links a { color: rgba(255,255,255,0.5); text-decoration: none; } .footer-links a:hover { color: white; } .footer-contact { display: flex; flex-direction: column; gap: 4px; } .footer-contact a { color: var(--gold-light); text-decoration: none; font-weight: 500; } /* RESPONSIVE */ @media (max-width: 720px) { .concept-grid, .cas-grid, .form-grid { grid-template-columns: 1fr; } .form-row { grid-template-columns: 1fr; } .step:not(:last-child)::after { display: none; } .tarifs-grid { grid-template-columns: 1fr; max-width: 320px; } nav { padding: 0 1rem; } section { padding: 60px 1.25rem; } } @media (max-width: 480px) { .avantages-tabs { flex-direction: column; width: 100%; } .avantages-tab { text-align: center; } .tarifs-grid { grid-template-columns: repeat(3, 1fr); max-width: 100%; } }
Innovation dentaire brevetée · 1SIDE

La Prothèse Amovible Clipsée sans crochet visible.

Conçue par le Dr Valere, fabriquée par NumériSmile : une prothèse partielle esthétique, précise et livrée au cabinet en 3 à 4 jours ouvrés.

Attachement lingual exclusif Fabrication 100 % numérique Pose en 7 minutes Deux rendez-vous
Partenaires
Laboratoire Dentalight
Dr Vale re — Concepteur
NumériSmile — Fabricant
L'innovation 1SIDE

Une prothèse partielle

Le 1SIDE est une prothèse partielle amovible temporaire, réalisable en plusieurs générations successives. Son système d'attachement lingual breveté supprime les crochets visibles — pour un résultat discret, confortable et esthétique.

Attachement lingual exclusif

Le clip se positionne sur la face linguale des dents naturelles — invisible de face, aucun réglage de crochet nécessaire.

Fabrication 100 % numérique

Conçue par CFAO sur fichier STL, la prothèse est fabriquée par NumériSmile avec une précision et une répétabilité maximales.

3 à 4 jours ouvrés

Du dépôt du cas à la livraison au cabinet, la prothèse est livrée en 3 à 4 jours ouvrés. Pose rapide, environ 7 minutes au fauteuil.

1SIDE™
Removable Facet
Innovation digitale brevetée

Conçue en Monaco par le Dr Valère. Protection internationale (Europe, USA, Chine, Japon, Inde, Mexique, Brésil). Fabriquée par NumériSmile.

Prothèse partielle amovible temporaire
Délai de fabrication 3–4 jours ouvrés
Temps de pose ~7 minutes
Rendez-vous nécessaires 2 seulement
Empreintes acceptées Optiques uniquement
Avantages

Pensé pour le praticien et le patient.

Flux entièrement numérique

Dépôt du cas via la plateforme NumériSmile. Empreinte optique requise. Connexion directe à votre logiciel de scanner.

Gain de temps au fauteuil

Pose en environ 7 minutes, aucun réglage de crochet. La prothèse s'insère et se retire simplement — propreté optimale.

Maintenance facilitée

Surface non poreuse, conception fermée limitant les zones de rétention bactérienne. Entretien au quotidien simplifié.

Plusieurs générations possibles

Dispositif temporaire conçu pour évoluer. Réalisable en plusieurs générations successives pour accompagner le plan de traitement.

Aucun crochet visible

L'attachement lingual exclusif reste invisible de face. Le sourire reste naturel, la prothèse indétectable.

Confort supérieur

Stabilité et précision optimales. La prothèse se clip et se déclip facilement, sans irritation ni inconfort.

Seulement deux rendez-vous

Un premier rendez-vous pour l'empreinte, un second pour la pose — un parcours simplifié et rapide pour le patient.

Hygiène optimale

Surface lisse et non poreuse. Entretien simple au quotidien, moins de dépôts et une hygiène bucco-dentaire préservée.

De l'empreinte à la prothèse

Un flux de travail sans rupture.

Le 1SIDE s'intègre parfaitement à votre flux existant, sans modifier vos habitudes. Empreinte optique, plateforme NumériSmile, et livraison au cabinet.

1
Empreinte optique

Scan intra-oral au cabinet avec votre scanner habituel.

Votre cabinet
2
Dépôt du cas

Envoi via la plateforme NumériSmile ou connexion à votre logiciel.

En ligne
3
Fabrication

NumériSmile fabrique la prothèse en 3 à 4 jours ouvrés.

NumériSmile
4
Livraison

Expédition directe au cabinet. Franco à partir de 250 € de commande.

Votre cabinet
5
Pose

Mise en place en environ 7 minutes, sans réglage de crochet.

~7 minutes
Pas encore équipé d'un scanner ? Nous pouvons organiser un ramassage à votre cabinet et prendre en charge la numérisation directement au laboratoire Dentalight.
Comparatif

1SIDE face aux alternatives.

En quoi le 1SIDE se distingue des autres solutions de prothèse partielle amovible.

1SIDE™ Dentalight Résine classique Flexit Bridge collé
Solution discrète, sans crochet visible
Fabrication 100 % numérique
Conception fermée, hygiène optimale ~
Surface non poreuse, entretien facile ~
Pose rapide, peu de temps au fauteuil ~ ~
Maintenance clinique et urgences

✓ Oui  ·  ~ Partiel  ·  ✗ Non. D'après les données du catalogue 1SIDE / NumériSmile.

Cas clinique

Un exemple concret.

Illustration d'une prise en charge avec le système 1SIDE, du scan à la livraison.

Avant
En bouche
Détail
Ajoutez vos photos de cas cliniques ici.
Format recommandé : avant / en bouche / détail du clip.
Cas illustratif

Patiente présentant une édentation partielle latérale. Le 1SIDE a permis de proposer une solution prothétique temporaire esthétique, sans crochet visible, réalisée en deux rendez-vous seulement.

Type de cas Édentation partielle
Scanner utilisé Empreinte optique
Génération 1ère génération
Praticien Dr Valère
Rendez-vous 1 — empreinte optique J0
Fabrication NumériSmile J1–J4
Livraison au cabinet J4–J5
Rendez-vous 2 — pose (~7 min) J5–J7
Tarifs Dentalight

Trois offres, un seul partenaire.

Tarifs TTC — via la plateforme NumériSmile pour le dépôt de vos prescriptions.

×1
89 €
TTC / unité
×3
239 €
TTC les 3

Traitement uniquement des empreintes optiques · Plateforme NumériSmile obligatoire pour le dépôt des prescriptions
Franco de port France métropolitaine à partir de 250 € TTC · Sinon 18 € TTC · Outre-mer : 98 € TTC

Contact

Curieux d'en savoir plus ?

Un référent Dentalight vous répond sous 24 h — présentation du système, étude d'un premier cas, ou simple question sur le flux.

Réponse sous 24 h

Un interlocuteur du laboratoire Dentalight vous recontacte personnellement.

Démarrage sans engagement

Premier cas sur mesure, sans volume minimum. Créez votre compte NumériSmile en 2 minutes.

Partenaire de confiance

Nous travaillons déjà avec NumériSmile sur les aligneurs dentaires. La même rigueur pour le 1SIDE.

Vous préférez nous appeler directement ?

01 81 84 00 38

Lun–Ven 8h–19h

— Sélectionnez — iTero Shining 3D (Aoralscan) 3Shape Medit Sirona / CEREC Autre Je n'ai pas encore de scanner
function switchTab(btn, panel) { document.querySelectorAll('.avantages-tab').forEach(t => t.classList.remove('active')); document.querySelectorAll('.avantages-panel').forEach(p => p.classList.remove('active')); btn.classList.add('active'); document.getElementById('panel-' + panel).classList.add('active'); } function handleSubmit(e) { e.preventDefault(); const btn = e.target.querySelector('.form-submit'); btn.textContent = 'Demande envoyée ✓'; btn.style.background = '#16a34a'; btn.disabled = true; setTimeout(() => { btn.textContent = 'Envoyer ma demande →'; btn.style.background = ''; btn.disabled = false; e.target.reset(); }, 4000); }