/* Site public : page d'accueil, pages de la liste d'attente, mentions légales (ui_builder_accueil).
   Maquette validée le 27/09/2026 (artefact « Page d'accueil OptiBâti360 »). Polices servies par le site (polices.css). */
:root {
  --acc-bleu: #1D4ED8; --acc-bleu-fonce: #1E3A8A; --acc-bleu-pale: #E3EAFD; --acc-nuit: #0F172A; --acc-nuit-2: #1E293B;
  --acc-texte: #0F172A; --acc-texte-2: #334155; --acc-texte-3: #475569; --acc-texte-4: #64748B; --acc-trait: #E2E8F0;
  --acc-fond-2: #F6F8FC; --acc-orange: #EA580C; --acc-orange-clair: #FDBA74; --acc-vert: #047857; --acc-rouge: #B91C1C;
  color-scheme: light;
}
*, *::before, *::after { box-sizing: border-box; }
.acc [hidden] { display: none !important; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body.acc { margin: 0; background: #FFFFFF; color: var(--acc-texte); font-family: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  font-size: 16px; line-height: 1.6; -webkit-text-size-adjust: 100%; }
.acc a { color: var(--acc-bleu); }
.acc a:hover { color: var(--acc-bleu-fonce); }
.acc h1, .acc h2, .acc h3 { font-family: Outfit, 'DM Sans', sans-serif; font-weight: 700; margin: 0; line-height: 1.2; text-wrap: balance; }
.acc :focus-visible { outline: 3px solid #93C5FD; outline-offset: 2px; }
.acc-conteneur { width: 100%; max-width: 1200px; margin: 0 auto; padding-inline: 24px; }
.acc-etroit { max-width: 760px; }
.acc-bleu { color: var(--acc-bleu); }
.acc-evitement { position: absolute; left: 16px; top: -60px; z-index: 50; background: var(--acc-bleu); color: #FFFFFF !important; padding: 10px 16px;
  border-radius: 10px; font-weight: 600; text-decoration: none; }
.acc-evitement:focus { top: 12px; }
.acc-apercu { background: #FEF3C7; color: #78350F; padding: 12px 24px; font-size: 15px; text-align: center; }

/* Boutons */
.acc-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 20px; border-radius: 10px;
  font: inherit; font-size: 15px; font-weight: 600; text-decoration: none; cursor: pointer; border: 1px solid transparent; }
.acc-btn-principal { background: var(--acc-bleu); color: #FFFFFF !important; }
.acc-btn-principal:hover { background: var(--acc-bleu-fonce); }
.acc-btn-second { background: #FFFFFF; border-color: #CBD5E1; color: var(--acc-texte) !important; }
.acc-btn-second:hover { border-color: #94A3B8; }
.acc-btn-large { min-height: 52px; padding: 0 24px; border-radius: 12px; font-size: 16px; }

/* En-tête */
.acc-entete { background: #FFFFFF; border-bottom: 1px solid var(--acc-trait); }
.acc-entete-fixe { position: sticky; top: 0; z-index: 20; }
.acc-entete-int { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.acc-logo { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--acc-texte) !important; flex-shrink: 0; }
.acc-logo > span { font-family: Outfit, sans-serif; font-size: 22px; font-weight: 700; }
.acc-nav { display: flex; gap: 28px; font-size: 15px; font-weight: 500; }
.acc-nav a { color: var(--acc-texte-2); text-decoration: none; }
.acc-nav a:hover { color: var(--acc-bleu); }
.acc-actions { display: flex; align-items: center; gap: 18px; }
.acc-connexion { position: relative; }
.acc-connexion summary { list-style: none; cursor: pointer; font-size: 15px; font-weight: 600; min-height: 44px; display: flex; align-items: center;
  padding: 0 12px; border-radius: 10px; }
.acc-connexion summary::-webkit-details-marker { display: none; }
.acc-connexion summary::after { content: ""; width: 7px; height: 7px; margin-left: 8px; border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-3px); }
.acc-connexion[open] summary { background: var(--acc-fond-2); }
.acc-connexion-menu { position: absolute; right: 0; top: calc(100% + 8px); width: 260px; background: #FFFFFF; border: 1px solid var(--acc-trait);
  border-radius: 14px; box-shadow: 0 18px 40px rgba(15, 23, 42, .14); padding: 8px; display: flex; flex-direction: column; z-index: 30; }
.acc-connexion-menu a { display: flex; flex-direction: column; padding: 10px 12px; border-radius: 10px; text-decoration: none; color: var(--acc-texte) !important; }
.acc-connexion-menu a:hover { background: var(--acc-fond-2); }
.acc-connexion-menu span { font-size: 13px; color: var(--acc-texte-4); }

/* Héros */
.acc-hero { background: var(--acc-fond-2); padding: 72px 0 80px; }
.acc-hero-grille { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px; align-items: center; }
.acc-hero-texte { display: flex; flex-direction: column; gap: 26px; }
.acc-badge { align-self: flex-start; font-size: 14px; font-weight: 600; color: var(--acc-bleu-fonce); background: var(--acc-bleu-pale); padding: 7px 14px; border-radius: 999px; }
.acc-hero h1 { font-size: clamp(42px, 5.2vw, 66px); line-height: 1.03; letter-spacing: -0.02em; }
.acc-chapeau { margin: 0; font-size: 19px; color: var(--acc-texte-2); max-width: 540px; }
.acc-boutons { display: flex; gap: 12px; flex-wrap: wrap; }
.acc-garanties { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 22px; font-size: 14px; color: var(--acc-texte-3); }
.acc-garanties li { display: flex; align-items: center; gap: 7px; }
.acc-hero-visuel { position: relative; height: 540px; }
.acc-ecran { position: absolute; left: 0; top: 16px; width: min(560px, 92%); height: 410px; border-radius: 14px; background: #FFFFFF; border: 1px solid #DCE3EE;
  box-shadow: 0 24px 60px rgba(15, 23, 42, .12); overflow: hidden; display: flex; flex-direction: column; }
.acc-ecran-barre { height: 34px; flex-shrink: 0; display: flex; align-items: center; gap: 6px; padding: 0 14px; background: #F1F5F9; border-bottom: 1px solid var(--acc-trait); }
.acc-ecran-barre i { width: 10px; height: 10px; border-radius: 999px; background: #CBD5E1; }
.acc-ecran-barre span { margin-left: 14px; font-size: 12px; color: var(--acc-texte-4); }
.acc-ecran-corps { flex-grow: 1; display: flex; min-height: 0; }
.acc-ecran-menu { width: 112px; flex-shrink: 0; background: var(--acc-nuit); padding: 14px 10px; display: flex; flex-direction: column; gap: 8px; font-size: 11px; color: #94A3B8; }
.acc-ecran-menu span { padding: 6px 8px; }
.acc-ecran-menu .actif { color: #FFFFFF; background: var(--acc-nuit-2); border-radius: 6px; }
.acc-ecran-contenu { flex-grow: 1; padding: 18px 20px; display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.acc-ecran-titre { font-family: Outfit, sans-serif; font-size: 17px; font-weight: 600; }
.acc-ecran-lignes { display: flex; flex-direction: column; gap: 8px; font-size: 13px; }
.acc-ecran-lignes div { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 12px; border: 1px solid var(--acc-trait); border-radius: 10px; }
.acc-ecran-lignes b.bleu { color: var(--acc-bleu); } .acc-ecran-lignes b.ambre { color: #B45309; }
.acc-ecran-chiffres { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.acc-ecran-chiffres div { background: var(--acc-fond-2); border-radius: 10px; padding: 10px 12px; display: flex; flex-direction: column; gap: 2px; }
.acc-ecran-chiffres span { font-size: 11px; color: var(--acc-texte-4); }
.acc-ecran-chiffres b { font-family: Outfit, sans-serif; font-size: 18px; font-weight: 600; }
.acc-tel { position: absolute; right: 0; bottom: 0; width: 228px; height: 452px; border-radius: 34px; border: 8px solid var(--acc-nuit); background: #F8FAFC;
  box-shadow: 0 24px 60px rgba(15, 23, 42, .22); overflow: hidden; display: flex; flex-direction: column; }
.acc-tel-haut { background: var(--acc-nuit); padding: 16px 14px 14px; display: flex; flex-direction: column; gap: 4px; }
.acc-tel-marque { font-family: Outfit, sans-serif; font-size: 12px; font-weight: 600; color: var(--acc-orange-clair); }
.acc-tel-salut { font-family: Outfit, sans-serif; font-size: 17px; font-weight: 600; color: #FFFFFF; }
.acc-tel-corps { padding: 12px; display: flex; flex-direction: column; gap: 10px; }
.acc-tel-carte { background: #FFFFFF; border: 1px solid var(--acc-trait); border-radius: 12px; padding: 12px; display: flex; flex-direction: column; gap: 6px; }
.acc-tel-carte b { font-size: 13px; line-height: 1.35; }
.acc-tel-mini { font-size: 11px; font-weight: 700; color: var(--acc-texte-3); }
.acc-tel-mini.orange { color: #C2410C; }
.acc-tel-bouton { display: flex; align-items: center; justify-content: center; height: 36px; border-radius: 9px; background: var(--acc-orange); color: #FFFFFF; font-size: 13px; font-weight: 600; }
.acc-tel-date { font-size: 12px; color: var(--acc-texte-4); }

/* Bandeau du pilote */
.acc-pilote { background: var(--acc-nuit); color: #CBD5E1; font-size: 15px; }
.acc-pilote-int { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 18px; }
.acc-pilote b { color: #FFFFFF; }
.acc-pilote a { color: var(--acc-orange-clair) !important; font-weight: 600; text-decoration: none; white-space: nowrap; }

/* Sections */
.acc-section { padding: 96px 0; }
.acc-section-serree { padding-top: 0; }
.acc-section h2 { font-size: clamp(30px, 3.4vw, 44px); line-height: 1.12; }
.acc-h2-petit { font-size: 28px !important; margin-bottom: 28px !important; }
.acc-surtitre { display: block; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--acc-bleu); margin-bottom: 12px; }
.acc-orange { color: var(--acc-orange-clair); }
.acc-texte { margin: 14px 0 0; font-size: 18px; color: var(--acc-texte-3); max-width: 760px; }
.acc-centre { display: flex; flex-direction: column; align-items: center; text-align: center; margin-bottom: 72px; }
.acc-centre .acc-texte { max-width: 680px; }
.acc-gris { background: var(--acc-fond-2); }
.acc-nuit { background: var(--acc-nuit); color: #E2E8F0; }
.acc-nuit h2 { color: #FFFFFF; margin-bottom: 48px; }

.acc-duo { display: grid; grid-template-columns: 5fr 7fr; gap: 56px; align-items: center; margin-bottom: 48px; }
.acc-trois { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.acc-deux { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 48px; }
.acc-carte { border: 1px solid var(--acc-trait); border-radius: 18px; padding: 28px; display: flex; flex-direction: column; gap: 14px; }
.acc-carte h3 { font-size: 24px; }
.acc-carte p { margin: 0; color: var(--acc-texte-3); }
.acc-carte-forte { border: 2px solid var(--acc-bleu); background: #F8FAFF; }
.acc-etiquette { align-self: flex-start; font-size: 12px; font-weight: 700; color: var(--acc-bleu-fonce); background: var(--acc-bleu-pale); padding: 4px 10px; border-radius: 999px; }
.acc-etiquette-forte { color: #FFFFFF; background: var(--acc-bleu); }

/* Fonctions (texte + présentation animée) */
.acc-fonction { display: grid; grid-template-columns: 5fr 7fr; gap: 56px; align-items: center; margin-top: 88px; }
.acc-centre + .acc-fonction { margin-top: 0; }
.acc-inverse { grid-template-columns: 7fr 5fr; }
.acc-inverse .acc-fonction-texte { order: 2; }
.acc-fonction-texte { display: flex; flex-direction: column; gap: 18px; }
.acc-fonction-sur { font-size: 14px; font-weight: 700; color: var(--acc-bleu); }
.acc-fonction-sur.acc-vert { color: var(--acc-vert); }
.acc-fonction h3 { font-size: clamp(26px, 2.6vw, 34px); line-height: 1.15; }
.acc-fonction p { margin: 0; font-size: 17px; line-height: 1.65; color: var(--acc-texte-3); }
.acc-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.acc-liste li { display: flex; gap: 10px; align-items: flex-start; }
.acc-liste svg { flex-shrink: 0; margin-top: 2px; }

.acc-aussi { display: flex; gap: 14px; padding: 20px; border: 1px solid var(--acc-trait); border-radius: 14px; }
.acc-aussi svg { flex-shrink: 0; }
.acc-aussi div { display: flex; flex-direction: column; gap: 4px; }
.acc-aussi span { font-size: 15px; color: var(--acc-texte-3); line-height: 1.5; }

.acc-journee { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px; }
.acc-journee li { display: flex; flex-direction: column; gap: 12px; padding-top: 18px; border-top: 2px solid #334155; }
.acc-journee li.orange { border-top-color: var(--acc-orange); }
.acc-journee li.vert { border-top-color: #10B981; }
.acc-journee b { font-family: Outfit, sans-serif; font-size: 30px; font-weight: 600; color: #FFFFFF; }
.acc-journee span { font-size: 15px; line-height: 1.55; }

.acc-applis-titre { display: flex; gap: 28px; align-items: center; margin-bottom: 48px; }
.acc-applis-titre svg { flex-shrink: 0; }
.acc-appli { border: 1px solid var(--acc-trait); border-radius: 18px; overflow: hidden; padding: 26px; display: flex; flex-direction: column; gap: 12px;
  border-top: 8px solid var(--acc-bleu); }
.acc-appli.orange { border-top-color: var(--acc-orange); } .acc-appli.vert { border-top-color: var(--acc-vert); }
.acc-appli-sur { font-size: 13px; font-weight: 700; color: var(--acc-bleu); }
.acc-appli.orange .acc-appli-sur { color: #C2410C; } .acc-appli.vert .acc-appli-sur { color: var(--acc-vert); }
.acc-appli h3 { font-size: 26px; }
.acc-appli p { margin: 0; color: var(--acc-texte-3); }

.acc-bloc-blanc { background: #FFFFFF; border-radius: 16px; padding: 28px; display: flex; flex-direction: column; gap: 10px; }
.acc-bloc-blanc h3 { font-size: 22px; }
.acc-bloc-blanc p { margin: 0; color: var(--acc-texte-3); }

/* Liste d'attente */
.acc-inscription { background: #EAF0FF; }
.acc-inscription-grille { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; align-items: start; }
.acc-inscription-texte { padding-top: 12px; }
.acc-inscription-texte .acc-texte { color: var(--acc-texte-2); }
.acc-etapes { display: flex; flex-direction: column; gap: 16px; margin-top: 22px; }
.acc-etapes div { display: flex; gap: 14px; align-items: flex-start; line-height: 1.55; }
.acc-num { width: 30px; height: 30px; flex-shrink: 0; border-radius: 999px; background: var(--acc-bleu); color: #FFFFFF; font-weight: 700;
  display: flex; align-items: center; justify-content: center; margin-top: -2px; }
.acc-form-carte { background: #FFFFFF; border-radius: 20px; padding: 36px; box-shadow: 0 20px 50px rgba(30, 58, 138, .12); }
.acc-form { display: flex; flex-direction: column; gap: 16px; }
.acc-champs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.acc-champ { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.acc-champ label { font-size: 14px; font-weight: 600; }
.acc-champ input, .acc-champ select { height: 48px; width: 100%; padding: 0 14px; border: 1px solid #CBD5E1; border-radius: 10px; font: inherit;
  font-size: 16px; color: var(--acc-texte); background: #FFFFFF; }
.acc-champ select { padding: 0 10px; }
.acc-champ input:focus, .acc-champ select:focus { border-color: var(--acc-bleu); }
.acc-champ [aria-invalid="true"] { border-color: var(--acc-rouge); }
.acc-erreur { font-size: 13px; color: var(--acc-rouge); }
.acc-erreur-accord { padding-left: 34px; margin-top: -10px; }
.acc-piege { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.acc-accord { display: flex; gap: 12px; align-items: flex-start; }
.acc-accord input { width: 22px; height: 22px; margin: 1px 0 0; flex-shrink: 0; accent-color: var(--acc-bleu); }
.acc-accord label { font-size: 15px; line-height: 1.5; color: var(--acc-texte-2); }
.acc-form .acc-btn-large { min-height: 54px; font-size: 17px; }
.acc-form button[disabled] { opacity: .7; cursor: wait; }
.acc-message { margin: 0; padding: 12px 14px; border-radius: 10px; background: #FEF2F2; color: var(--acc-rouge); font-size: 15px; }
.acc-petit { margin: 0; font-size: 13px; line-height: 1.55; color: var(--acc-texte-4); }
.acc-envoye { display: flex; flex-direction: column; gap: 16px; align-items: flex-start; padding: 12px 0; outline: none; }
.acc-envoye h3 { font-size: 28px; }
.acc-envoye p { margin: 0; font-size: 17px; color: var(--acc-texte-2); }
.acc-envoye .acc-petit { font-size: 14px; color: var(--acc-texte-4); }
.acc-rond-vert { width: 56px; height: 56px; border-radius: 999px; background: #DCFCE7; display: flex; align-items: center; justify-content: center; }
.acc-ferme { margin: 0; font-size: 18px; color: var(--acc-texte-2); }

/* Questions */
.acc-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 64px; margin-top: 36px; }
.acc-faq h3 { font-family: 'DM Sans', sans-serif; font-size: 19px; }
.acc-faq p { margin: 8px 0 0; color: var(--acc-texte-3); }

/* Pied de page */
.acc-pied { background: var(--acc-nuit); color: #CBD5E1; padding: 56px 0 40px; font-size: 15px; }
.acc-pied-haut { display: flex; justify-content: space-between; gap: 48px; flex-wrap: wrap; }
.acc-pied-marque { display: flex; flex-direction: column; gap: 12px; max-width: 360px; }
.acc-pied-logo { display: flex; align-items: center; gap: 10px; }
.acc-pied-logo span { font-family: Outfit, sans-serif; font-size: 20px; font-weight: 700; color: #FFFFFF; }
.acc-pied-colonnes { display: flex; gap: 72px; flex-wrap: wrap; }
.acc-pied-colonnes div { display: flex; flex-direction: column; gap: 10px; }
.acc-pied-titre { font-weight: 700; color: #FFFFFF; }
.acc-pied a { color: #CBD5E1 !important; text-decoration: none; }
.acc-pied a:hover { color: #FFFFFF !important; text-decoration: underline; }
.acc-pied-bas { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 36px; padding-top: 22px;
  border-top: 1px solid var(--acc-nuit-2); font-size: 13px; color: #94A3B8; }

/* Pages courtes (confirmation, désinscription, mentions) */
.acc-simple { background: var(--acc-fond-2); padding: 56px 0 72px; min-height: 60vh; }
.acc-colonne { display: flex; flex-direction: column; gap: 20px; align-items: flex-start; }
.acc-colonne h1 { font-size: clamp(30px, 4vw, 40px); line-height: 1.12; }
.acc-colonne .acc-texte { margin: 0; color: var(--acc-texte-2); }
.acc-colonne form { margin: 0; }
.acc-rond { width: 72px; height: 72px; border-radius: 999px; display: flex; align-items: center; justify-content: center; }
.acc-encadre { width: 100%; background: #FFFFFF; border: 1px solid var(--acc-trait); border-radius: 16px; padding: 20px; display: flex; flex-direction: column; gap: 12px; }
.acc-encadre span { color: var(--acc-texte-3); }
.acc-legal { background: #FFFFFF; border: 1px solid var(--acc-trait); border-radius: 16px; padding: 32px; }
.acc-legal h1 { font-size: 34px; margin-bottom: 12px; }
.acc-legal h2 { font-size: 21px; margin: 28px 0 8px; }
.acc-legal p, .acc-legal li { color: var(--acc-texte-2); }
.acc-legal ul { padding-left: 1.2em; display: flex; flex-direction: column; gap: 6px; }

/* Connexion au logiciel (/login) */
.acc-connexion-page { max-width: 560px; margin: 0 auto; display: flex; flex-direction: column; gap: 16px; }
.acc-connexion-carte { background: #FFFFFF; border: 1px solid var(--acc-trait); border-radius: 20px; padding: 32px; display: flex;
  flex-direction: column; gap: 16px; box-shadow: 0 20px 50px rgba(30, 58, 138, .08); }
.acc-connexion-carte h1 { font-size: clamp(30px, 4vw, 38px); }
.acc-connexion-carte .acc-surtitre { margin-bottom: 0; }
.acc-connexion-carte .acc-texte { margin: 0; color: var(--acc-texte-2); }
.acc-espaces { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.acc-espace { display: flex; flex-direction: column; gap: 4px; padding: 16px 18px; background: #FFFFFF; border: 1px solid var(--acc-trait);
  border-top: 5px solid var(--acc-orange); border-radius: 14px; text-decoration: none; color: var(--acc-texte) !important; }
.acc-espace span { font-size: 14px; line-height: 1.45; color: var(--acc-texte-3); }
.acc-espace-vert { border-top-color: var(--acc-vert); }
.acc-espace-bleu { border-top-color: #1D4ED8; grid-column: 1 / -1; }
.acc-espace:hover { border-color: #CBD5E1; box-shadow: 0 8px 20px rgba(15, 23, 42, .06); }

/* Tablette */
@media (max-width: 1100px) {
  .acc-hero-grille { grid-template-columns: 1fr; }
  .acc-hero-visuel { width: 100%; max-width: 640px; margin: 0 auto; }
  .acc-journee { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .acc-nav { gap: 18px; }
}
/* Téléphone et petite tablette */
@media (max-width: 900px) {
  .acc-nav, .acc-btn-entete { display: none; }
  .acc-entete-int { min-height: 64px; }
  .acc-logo > span { font-size: 19px; }
  .acc-hero { padding: 40px 0 44px; }
  .acc-hero-visuel { display: none; }
  .acc-chapeau { font-size: 17px; }
  .acc-boutons .acc-btn { flex: 1 1 100%; }
  .acc-garanties { flex-direction: column; gap: 8px; }
  .acc-pilote-int { flex-direction: column; align-items: flex-start; gap: 6px; font-size: 14px; }
  .acc-section { padding: 56px 0; }
  .acc-section-serree { padding-top: 0; }
  .acc-duo, .acc-fonction, .acc-inverse, .acc-inscription-grille { grid-template-columns: 1fr; gap: 28px; }
  .acc-inverse .acc-fonction-texte { order: 0; }
  .acc-fonction { margin-top: 56px; }
  .acc-centre { margin-bottom: 44px; align-items: flex-start; text-align: left; }
  .acc-trois, .acc-deux, .acc-faq { grid-template-columns: 1fr; gap: 16px; }
  .acc-faq { gap: 24px; }
  .acc-journee { grid-template-columns: 1fr 1fr; gap: 20px; }
  .acc-journee b { font-size: 24px; }
  .acc-applis-titre { flex-direction: column; align-items: flex-start; gap: 16px; }
  .acc-applis-titre svg { width: 64px; height: 64px; }
  .acc-texte { font-size: 17px; }
  .acc-form-carte { padding: 22px; border-radius: 18px; }
  .acc-champs { grid-template-columns: 1fr; gap: 14px; }
  .acc-legal { padding: 22px; }
  .acc-pied { padding: 40px 0 28px; }
  .acc-pied-colonnes { gap: 32px; }
}
@media (max-width: 480px) {
  .acc-conteneur { padding-inline: 16px; }
  .acc-espaces { grid-template-columns: 1fr; }
  .acc-connexion-carte { padding: 22px; }
  .acc-journee { grid-template-columns: 1fr; }
  .acc-connexion-menu { right: -8px; width: min(260px, calc(100vw - 32px)); }
}
