/** Shopify CDN: Minification failed

Line 286:10 Unexpected "{"
Line 286:19 Expected ":"
Line 290:10 Unexpected "{"
Line 290:19 Expected ":"
Line 297:10 Unexpected "{"
Line 297:19 Expected ":"
Line 305:12 Unexpected "{"
Line 305:21 Expected ":"
Line 306:12 Unexpected "{"
Line 306:21 Expected ":"
... and 106 more hidden warnings

**/


/* CSS from section stylesheet tags */
.bh-auth{--c-text:#111;--c-muted:#6b7280;--c-line:#e5e7eb;--c-silver:#9ca3af;--radius:18px}
.bh-auth__container{max-width:1080px;margin:0 auto;padding:40px 20px}
.bh-auth__kicker{letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;color:var(--c-silver);margin:0 0 8px 0}
.bh-auth__title{font-size:clamp(18px,3.2vw,40px);line-height:1.1;margin:0}
.bh-auth__subtitle{color:var(--c-muted);margin:.1rem 0 0 0}
.bh-auth__subtitle{font-size:13px}
.bh-auth__subtitle{text-transform: uppercase !important}
.bh-auth__subtitle{letter-spacing: .10em}
.bh-auth__badges{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 8px 0;padding:0}
.bh-auth__badges li{list-style:none;border:1px solid var(--c-line);border-radius:999px;padding:8px 12px;font-size:.9rem}
.bh-auth__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:32px 0}
@media(max-width:900px){.bh-auth__steps{grid-template-columns:1fr}}
.bh-auth__step{border:1px solid var(--c-line);border-radius:var(--radius);padding:18px 16px;display:flex;gap:14px;align-items:flex-start;background:#fff}
.bh-auth__step-num{width:36px;height:36px;border:1px solid var(--c-line);border-radius:999px;display:grid;place-items:center;font-weight:600}
.bh-auth__step-body h3{margin:.2rem 0 .2rem 0;font-size:1.05rem}
.bh-auth__step-body p{margin:0;color:var(--c-muted)}

.bh-auth__h2{font-size:1.4rem;margin:6px 0 14px 0;text-align:center}
.bh-auth__pricing{margin:18px 0 8px 0}
.bh-auth__pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(max-width:780px){.bh-auth__pricing-grid{grid-template-columns:1fr}}
.bh-card{border:1px solid var(--c-line);border-radius:var(--radius);padding:18px 16px;background:#fff}
.bh-card--accent{box-shadow:0 4px 24px rgba(0,0,0,.04)}
.bh-card__title{margin:0 0 4px 0;font-weight:600}
.bh-card__desc{margin:0 0 10px 0;color:var(--c-muted)}
.bh-card__price{margin:0;font-size:1.1rem}
.bh-card__note{margin:.4rem 0 0 0;font-size:.9rem;color:var(--c-muted)}
.bh-auth__cta{display:flex;justify-content:center;margin:18px 0 8px 0}
.bh-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border:1px solid var(--c-line);border-radius:999px;text-decoration:none}
.bh-btn:hover{box-shadow:0 6px 28px rgba(0,0,0,.06)}

.bh-auth__certificate{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center;margin:28px 0}
@media(max-width:900px){.bh-auth__certificate{grid-template-columns:1fr}}
.bh-auth__cert-figure{border:1px solid var(--c-line);border-radius:var(--radius);padding:10px;background:#fff}

.bh-auth__faq{margin:24px 0}
.bh-acc{border:1px solid var(--c-line);border-radius:var(--radius);padding:10px 14px;background:#fff;margin:10px 0}
.bh-acc__sum{cursor:pointer;font-weight:600;list-style:none}
.bh-acc__panel{margin-top:6px;color:var(--c-muted)}

/* Modal */
.bh-authmodal{position:fixed;inset:0;display:none;z-index:9999}
.bh-authmodal[aria-hidden="false"]{display:block}
.bh-authmodal__overlay{position:absolute;inset:0;background:rgba(0,0,0,.38);backdrop-filter:saturate(120%) blur(2px)}
.bh-authmodal__dialog{position:relative;max-width:760px;margin:6vh auto;background:#fff;border-radius:18px;border:1px solid var(--c-line);padding:22px}
.bh-authmodal__close{position:absolute;top:8px;right:12px;width:36px;height:36px;border:1px solid var(--c-line);border-radius:999px;background:#fff;font-size:20px;line-height:1}
.bh-authmodal__title{margin:.2rem 0;font-size:1.3rem}
.bh-authmodal__subtitle{margin:0 0 .6rem 0;color:var(--c-muted)}

.bh-authform__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0}
.bh-authform__item--full{grid-column:1/-1}
@media(max-width:720px){.bh-authform__grid{grid-template-columns:1fr}}
.bh-authform__fieldset{border:1px solid var(--c-line);border-radius:16px;padding:12px;margin:10px 0}
.bh-authform__fieldset legend{padding:0 .4rem;color:var(--c-silver);text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}
.bh-uploadgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:720px){.bh-uploadgrid{grid-template-columns:1fr}}
.bh-help{margin:.2rem 0 .6rem 0;color:var(--c-muted);font-size:.9rem}
.bh-disclaimer{font-size:.9rem;color:var(--c-muted);margin:.6rem 0 1rem 0}
.bh-authform__feedback{margin-top:10px;font-size:.95rem}
.bh-btn--primary{border-color:#d1d5db}
/* Modal CSS-only via :target (pas de JS) */
.bh-authmodal{display:none}
.bh-authmodal:target{display:block}
.bh-authmodal__overlay{display:block;position:absolute;inset:0;background:rgba(0,0,0,.38);backdrop-filter:saturate(120%) blur(2px)}
.bh-authmodal__close{position:absolute;top:8px;right:12px;width:36px;height:36px;border:1px solid var(--c-line);border-radius:999px;background:#fff;display:grid;place-items:center;font-size:20px;text-decoration:none;color:inherit}


/* Force l’ouverture en CSS pur via :target */
.bh-authmodal { position: fixed; inset: 0; display: none; z-index: 99999; }
.bh-authmodal:target { display: block !important; }

.bh-authmodal__overlay { position: absolute; inset: 0; display: block; background: rgba(0,0,0,.38); backdrop-filter: saturate(120%) blur(2px); }
.bh-authmodal__dialog { position: relative; max-width: 760px; margin: 6vh auto; background: #fff; border-radius: 18px; border: 1px solid var(--c-line); padding: 22px; z-index: 1; }
.bh-authmodal__close { position: absolute; top: 8px; right: 12px; width: 36px; height: 36px; border: 1px solid var(--c-line); border-radius: 999px; background: #fff; display: grid; place-items: center; font-size: 20px; text-decoration: none; color: inherit; }

/* --- Overlay plus sombre + flou + fade --- */
.bh-authmodal { position: fixed; inset: 0; display: none; z-index: 99999; }
.bh-authmodal:target { display: block !important; }

.bh-authmodal__overlay{
  position: absolute;
  inset: 0;
  display: block;
  background: rgba(0,0,0,.68); /* voile plus sombre */
  backdrop-filter: blur(3px) saturate(105%); /* léger flou pour isoler le pop-up */
  opacity: 0;
  transition: opacity .18s ease-in-out;
}

/* quand ouvert, l’overlay est pleinement visible */
.bh-authmodal:target .bh-authmodal__overlay{ opacity: 1; }

/* boîte du pop-up : légère animation d’entrée + scroll interne propre */
.bh-authmodal__dialog{
  position: relative;
  max-width: 760px;
  margin: 6vh auto;
  background: #fff;
  border-radius: 18px;
  border: 1px solid var(--c-line);
  padding: 22px;
  z-index: 1;
  max-height: 88vh;          /* évite que ça dépasse l’écran */
  overflow: auto;            /* scroll uniquement dans le pop-up */
  overscroll-behavior: contain;
  transform: translateY(6px);
  opacity: .98;
  transition: transform .18s ease-out, opacity .18s ease-out, box-shadow .18s ease-out;
  box-shadow: 0 24px 80px rgba(0,0,0,.35);
}
.bh-authmodal:target .bh-authmodal__dialog{
  transform: translateY(0);
  opacity: 1;
}

/* bouton close au-dessus du voile, intact */
.bh-authmodal__close{
  position: absolute;
  top: 8px; right: 12px;
  width: 36px; height: 36px;
  border: 1px solid var(--c-line);
  border-radius: 999px;
  background: #fff;
  display: grid; place-items: center;
  font-size: 20px; text-decoration: none; color: inherit;
}

/* petit plus: empêcher les clics sur le dessous */
.bh-authmodal__overlay { pointer-events: auto; }


/* --- Carte luxe --- */
.bh-formcard{
  border:1px solid var(--c-line);
  border-radius:24px;
  padding:18px;
  background:#fff;
  box-shadow:0 6px 28px rgba(0,0,0,.06);
}
.bh-formcard__head{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  border-bottom:1px solid var(--c-line); padding-bottom:10px; margin-bottom:14px;
}
.bh-formcard__title{ margin:0; font-size:1.1rem; }
.bh-formcard__sub{ margin:2px 0 0 0; color:var(--c-muted); font-size:.95rem; }
.bh-pill{
  border:1px solid var(--c-line); border-radius:999px; padding:6px 10px;
  font-size:.9rem; color:var(--c-muted); white-space:nowrap;
}

/* --- Fieldsets / labels --- */
.bh-fieldset{ border:1px solid var(--c-line); border-radius:18px; padding:12px; margin:12px 0; }
.bh-fieldset > legend{ padding:0 .5rem; font-size:.8rem; text-transform:uppercase; letter-spacing:.08em; color:var(--c-silver); }

.bh-grid2{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.bh-colspan{ grid-column:1/-1; }
@media(max-width:760px){ .bh-grid2{ grid-template-columns:1fr; } }

.bh-field{ display:flex; flex-direction:column; gap:6px; }
.bh-label{ font-size:.85rem; letter-spacing:.02em; text-transform:uppercase; color:#2b2b2b; }
.bh-input, .bh-textarea{
  width:100%; border:1px solid var(--c-line); border-radius:14px; padding:11px 12px; background:#fff;
}
.bh-input:focus, .bh-textarea:focus{ outline: none; border-color:#cfd4da; box-shadow:0 0 0 3px rgba(0,0,0,.03); }

/* --- Dropzones files façon “sell page” --- */
.bh-drop{ 
  position:relative; display:grid; align-content:center; gap:6px; min-height:110px; padding:12px; 
  border:1px dashed #d6dbe1; border-radius:16px; text-align:center; background:#fafafa;
}
.bh-drop input[type="file"]{ position:absolute; inset:0; opacity:0; cursor:pointer; }
.bh-drop__title{ font-weight:600; }
.bh-drop__hint{ font-size:.9rem; color:var(--c-muted); }

/* --- Actions --- */
.bh-actions{ display:flex; align-items:center; gap:12px; margin-top:12px; }


/* Message = même look que "Marque & modèle" */
.bh-textarea{
  font-size: 1rem;         /* idem .bh-input */
  line-height: 1.35;       /* lecture confortable */
  padding: 11px 12px;      /* idem .bh-input */
  border: 1px solid var(--c-line);
  border-radius: 14px;
  background: #fff;
  font-family: inherit;    /* même police que le reste */
  color: var(--c-text, #111);
  min-height: 120px;       /* laisse de la place sans être énorme */
  resize: vertical;        /* redimensionnable si besoin */
}
.bh-textarea::placeholder{
  color: var(--c-muted);
  opacity: 1;
}


/* --- Bloc Certificat : mise en page luxe & image contrôlée --- */
.bh-auth__certificate{
  grid-template-columns: 1fr 0.9fr;      /* texte | image (plus compacte) */
  align-items: center;
  gap: 22px;
}

/* limite la taille de l'image et la cadre joliment */
.bh-auth__cert-figure{
  justify-self: center;
  width: clamp(260px, 36vw, 520px);      /* largeur max contrôlée */
  aspect-ratio: 4 / 3;                   /* ratio élégant et stable */
  overflow: hidden;                      /* masque le débord */
  border-radius: 16px;
  border: 1px solid var(--c-line);
  box-shadow: 0 10px 40px rgba(0,0,0,.08);
  background: #fff;
  padding: 0;                             /* bord net, pas de padding */
}

/* l'image remplit le cadre sans déformer */
.bh-auth__cert-figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;                      /* coupe propre si trop large */
  object-position: center;                /* focus au centre */
  display: block;
}

/* titre + texte plus denses pour accompagner l'image réduite */
.bh-auth__certificate .bh-auth__h2{
  text-align: left;
  margin-bottom: 6px;
}
.bh-auth__certificate .bh-auth__muted{
  max-width: 520px;
  line-height: 1.5;
}

/* Mobile : pile et garde une image raisonnable */
@media (max-width: 900px){
  .bh-auth__certificate{
    grid-template-columns: 1fr;
  }
  .bh-auth__cert-figure{
    width: min(92%, 520px);
    aspect-ratio: 4 / 3;
  }
  .bh-auth__certificate .bh-auth__h2{ text-align:center; }
  .bh-auth__certificate .bh-auth__muted{ text-align:center; margin: 0 auto; }
}

/* Mise en page élégante + image contrôlée */
.bh-auth__certificate{display:grid;grid-template-columns:1fr 0.9fr;gap:22px;align-items:center;margin:28px 0}
.bh-auth__certificate .bh-auth__h2{text-align:left;margin-bottom:6px}
.bh-auth__certificate .bh-auth__muted{max-width:520px;line-height:1.5}

.bh-auth__cert-figure{justify-self:center;width:clamp(260px,36vw,520px);aspect-ratio:4/3;overflow:hidden;border-radius:16px;border:1px solid var(--c-line);box-shadow:0 10px 40px rgba(0,0,0,.08);background:#fff}
.bh-auth__cert-figure img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}

@media (max-width:900px){
  .bh-auth__certificate{grid-template-columns:1fr}
  .bh-auth__certificate .bh-auth__h2{ text-align:center }
  .bh-auth__certificate .bh-auth__muted{ text-align:center; margin:0 auto }
  .bh-auth__cert-figure{width:min(92%,520px)}
}



/* Certificat : placement + hiérarchie typographique */
#bh-cert-{{ section.id }} .bh-cert__text{
  padding-left: 140px;          /* décale vers la droite */
}

#bh-cert-{{ section.id }} .bh-auth__h2{
  text-align: left;
  font-size: 2.6rem;           /* plus grand que le h2 global */
  font-weight: 700;            /* gras */
  margin: 0 0 8px 0;
}

#bh-cert-{{ section.id }} .bh-auth__muted{
  font-size: 1.5rem;           /* un peu plus petit */
  line-height: 1.55;
  color: var(--c-muted);
}

/* Mobile: recentrer et réduire le décalage */
@media (max-width: 900px){
  #bh-cert-{{ section.id }} .bh-cert__text{ padding-left: 0; text-align: center; }
  #bh-cert-{{ section.id }} .bh-auth__h2{ text-align: inherit; font-size: 1.35rem; }
}


/* Étapes : titre + paragraphe */
.bh-auth__step-body h3{
  font-size: 2.0rem;        /* + */
  font-weight: 700;
  margin: .1rem 0 .2rem 0;
}
.bh-auth__step-body p{
  font-size: 1.3rem;        /* – */
  line-height: 1.55;
  color: var(--c-muted);
}

/* Option: cercle numéroté un peu plus présent */
.bh-auth__step-num{
  width: 40px;
  height: 40px;
  font-size: .95rem;
}

/* Mobile : un chouïa moins grand pour garder l’équilibre */
@media (max-width: 900px){
  .bh-auth__step-body h3{ font-size: 1.12rem; }
  .bh-auth__step-body p{ font-size: .93rem; }
}

.bh-auth .bh-btn.bh-btn--primary{
  background: #111;
  color: #fff;
  border-color: #111;
}
.bh-auth .bh-btn.bh-btn--primary:hover{
  box-shadow: 0 8px 28px rgba(0,0,0,.18);
}




/* Titre plus petit sur desktop uniquement */
@media (min-width: 750px){
  #bh-auth-{{ section.id }} .bh-auth__title{
    font-size: 26px !important;  /* ajuste à 24–28px si besoin */
    line-height: 1.2 !important;
  }
}






/* --- Cartes tarifs : centrage + hiérarchie typographique --- */
#bh-auth-{{ section.id }} .bh-auth__pricing-grid .bh-card{
  text-align: center;
  padding: 18px 18px 20px;
  display: grid;
  gap: 6px;                  /* rapproche les éléments */
  align-content: center;     /* centre verticalement dans la carte */
}

/* Titres plus petits */
#bh-auth-{{ section.id }} .bh-card__title{
  font-size: 17px;           /* avant ~18 */
  line-height: 1.25;
}

/* Description un poil plus discrète */
#bh-auth-{{ section.id }} .bh-card__desc{
  font-size: 13px;
  color: var(--c-muted);
}

/* Prix plus visible */
#bh-auth-{{ section.id }} .bh-card__price{
  font-size: 21px;           /* avant ~17 */
  font-weight: 600;
  letter-spacing: .01em;
}

/* Petite pastille sous le prix (ex: “uniquement en boutique”) */
#bh-auth-{{ section.id }} .bh-card__note{
  font-size: 13px;
  opacity: .9;
}

/* Mobile : garde le rythme */
@media (max-width: 780px){
  #bh-auth-{{ section.id }} .bh-card__title{ font-size: 14px; }
  #bh-auth-{{ section.id }} .bh-card__price{ font-size: 18px; }
}






/* Prix des formules — plus grand (override) */
#bh-auth-{{ section.id }} .bh-auth__pricing-grid .bh-card .bh-card__price{
  font-size: 18px !important;   /* desktop */
  font-weight: 700;
  letter-spacing: .015em;
  line-height: 1.2;
  margin-top: 6px;               /* un peu d’air après la desc */
}

/* Mobile : un tout petit peu moins grand pour l’équilibre */
@media (max-width: 780px){
  #bh-auth-{{ section.id }} .bh-auth__pricing-grid .bh-card .bh-card__price{
    font-size: 15px !important;
  }
}



#bh-auth-{{ section.id }} .bh-card__price{
  position: relative;
}
#bh-auth-{{ section.id }} .bh-card__price::before{
  content:"";
  display:block;
  width:38px; height:1px;
  margin:10px auto 8px;
  background: var(--c-line);
}





/* FAQ : question un peu plus grande, réponse un peu plus petite */
#bh-auth-{{ section.id }} .bh-acc__sum{
  font-size: 15px;            /* question */
  line-height: 1.35;
}

#bh-auth-{{ section.id }} .bh-acc__panel{
  font-size: 13px;            /* réponse (plus petite) */
  line-height: 1.55;
  color: var(--c-muted);
}

/* Mobile : légère réduction pour garder l’équilibre */
@media (max-width: 780px){
  #bh-auth-{{ section.id }} .bh-acc__sum{ font-size: 13px; }
  #bh-auth-{{ section.id }} .bh-acc__panel{ font-size: 11.5px; }
}

/* FAQ : réponses justifiées */
#bh-auth-{{ section.id }} .bh-acc__panel{
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
}

/* Si tu as des <p> internes, on force aussi */
#bh-auth-{{ section.id }} .bh-acc__panel p{
  margin: 0 0 8px;
  text-align: justify;
  hyphens: auto;
}




/* Mobile : centrer et agrandir un peu les h2
   - "Votre preuve d’authenticité"
   - "Nos formules"
   - "Questions fréquentes" */
@media (max-width: 768px){
  #bh-auth-{{ section.id }} .bh-auth__h2{
    text-align: center !important;
    font-size: 1.34rem;   /* + ~2px vs avant (ajuste 1.24–1.34 si besoin) */
    line-height: 1.2;
    margin-top: 2px;
    margin-bottom: 10px;
  }
}



/* Mobile : titres centrés + un peu plus grands (force la taille) */
@media (max-width: 768px){
  #bh-auth-{{ section.id }} .bh-auth__h2{
    text-align: center !important;
    font-size: 1.63rem !important; /* augmente clairement (ajuste 1.44–1.56rem si besoin) */
    line-height: 1.22;
    margin-top: 2px;
    margin-bottom: 10px;
  }
}




/* État visuel quand un fichier est choisi */
#bh-auth-{{ section.id }} .bh-drop.has-file{
  background:#fff;
  border-color:#d1d5db;
}

/* Petite coche ✓ quand un fichier est présent */
#bh-auth-{{ section.id }} .bh-drop.has-file::after{
  content:"✓";
  position:absolute;
  top:8px; right:8px;
  width:20px; height:20px;
  border-radius:999px;
  display:grid; place-items:center;
  background:#111; color:#fff;
  font-size:.8rem; line-height:1;
}

/* Ligne d’aperçu (miniature + nom) */
#bh-auth-{{ section.id }} .bh-drop__preview{
  display:none;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:6px;
  padding-top:4px;
}
#bh-auth-{{ section.id }} .bh-drop.has-file .bh-drop__preview{ display:flex; }
#bh-auth-{{ section.id }} .bh-drop__preview img{
  width:56px; height:56px; object-fit:cover;
  border-radius:8px; border:1px solid #ececec; box-shadow:0 2px 8px rgba(0,0,0,.06);
}
#bh-auth-{{ section.id }} .bh-drop__filename{
  font-size:.85rem; color:#555; word-break:break-word; max-width:60ch;
}

/* Petit statut (si l’élément .bh-drop__hint n’existe pas) */
#bh-auth-{{ section.id }} .bh-drop__status{
  display:block;
  margin-top:4px;
  font-size:.85rem;
  color:#555;
  text-align:center;
}


/* === Authentifier — Titre centré, questions à gauche === */
@media (min-width: 750px){
  /* Le bloc complet "Questions fréquentes" s’étale sur la largeur de la page */
  #bh-auth-{{ section.id }} .bh-auth__faq{
    max-width: none;
    margin: 60px 80px 0 80px;   /* marge gauche/droite fixe, comme le reste de la page */
    text-align: left !important;
  }

  /* Titre parfaitement centré */
  #bh-auth-{{ section.id }} .bh-auth__faq h2{
    text-align: center !important;
    margin-bottom: 32px;
  }

  /* Chaque item de FAQ : tout à gauche */
  #bh-auth-{{ section.id }} .bh-auth__faq details{
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  /* Ligne de question (summary) — ouvert OU fermé */
  #bh-auth-{{ section.id }} .bh-auth__faq summary{
    text-align: left !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  /* Texte de réponse vraiment aligné à gauche aussi */
  #bh-auth-{{ section.id }} .bh-auth__faq p,
  #bh-auth-{{ section.id }} .bh-auth__faq li{
    text-align: left !important;
  }
}

/* Mobile : marge sur les côtés mais tout à gauche */
@media (max-width: 749px){
  #bh-auth-{{ section.id }} .bh-auth__faq{
    padding-left: 16px;
    padding-right: 16px;
    text-align: left !important;
  }
  #bh-auth-{{ section.id }} .bh-auth__faq h2{
    text-align: center !important;
  }
  #bh-auth-{{ section.id }} .bh-auth__faq summary,
  #bh-auth-{{ section.id }} .bh-auth__faq p,
  #bh-auth-{{ section.id }} .bh-auth__faq li{
    text-align: left !important;
  }
}

/* === Authentifier — décale légèrement les questions vers la droite === */
@media (min-width: 750px){
  #bh-auth-{{ section.id }} .bh-auth__faq details,
  #bh-auth-{{ section.id }} .bh-auth__faq summary{
    padding-left: 100px !important;   /* ajuste : 30–50px selon ce que tu préfères */
  }
}



/* Authentifier — centrer titre + sous-titre sur mobile */
@media (max-width: 749px){
  #bh-auth-{{ section.id }} .bh-auth__hero{
    text-align: center;
  }

  #bh-auth-{{ section.id }} .bh-auth__kicker,
  #bh-auth-{{ section.id }} .bh-auth__title,
  #bh-auth-{{ section.id }} .bh-auth__subtitle{
    text-align: center;
  }
}
/* Vars & container */
.bh-clean{--c-text:#111;--c-muted:#6b7280;--c-line:#e5e7eb;--c-silver:#9ca3af;--radius:18px}
.bh-clean__container{max-width:1080px;margin:0 auto;padding:40px 20px}

/* Hero */
.bh-kicker{letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;color:var(--c-silver);margin:0 0 8px}
.bh-title{font-size:clamp(28px,3.2vw,40px);line-height:1.1;margin:0}
.bh-subtitle{color:var(--c-muted);margin:.6rem 0 0}
.bh-badges{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 8px;padding:0}
.bh-badges li{list-style:none;border:1px solid var(--c-line);border-radius:999px;padding:8px 12px;font-size:.9rem}

/* Steps */
.bh-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}
@media(max-width:900px){.bh-steps{grid-template-columns:1fr}}
.bh-step{border:1px solid var(--c-line);border-radius:var(--radius);padding:18px 16px;display:flex;gap:14px;background:#fff}
.bh-step__num{width:40px;height:40px;border:1px solid var(--c-line);border-radius:999px;display:grid;place-items:center;font-weight:600}
.bh-step__body h3{margin:.1rem 0 .2rem;font-size:1.2rem;font-weight:700}
.bh-step__body p{margin:0;color:var(--c-muted);font-size:.95rem;line-height:1.55}

/* Services grid */
.bh-h2{font-size:1.4rem;margin:6px 0 14px;text-align:left}
.bh-services{margin:22px 0 8px}
.bh-svcgrid{display:grid;gap:16px}
@media(min-width:900px){.bh-svcgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.bh-svccard{border:1px solid var(--c-line);border-radius:18px;background:#fff;overflow:hidden;display:flex;flex-direction:column}
.bh-svccard__img{width:100%;height:160px;object-fit:cover}
.bh-svccard__body{padding:14px}
.bh-svccard__title{margin:0 0 6px;font-weight:700}
.bh-svccard__text{margin:0;color:var(--c-muted)}

/* Pricing */
.bh-pricing{margin:16px 0}
.bh-pricegrid{display:grid;gap:16px}
@media(min-width:900px){.bh-pricegrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.bh-card{border:1px solid var(--c-line);border-radius:18px;background:#fff;padding:18px}
.bh-card--accent{box-shadow:0 4px 24px rgba(0,0,0,.04)}
.bh-card__title{margin:0 0 6px;font-weight:700}
.bh-card__desc{margin:0 0 10px;color:var(--c-muted)}
.bh-card__price{margin:0 0 6px;font-size:1.05rem}
.bh-card__note{margin:0;color:var(--c-muted);font-size:.9rem}
.bh-cta{display:flex;justify-content:center;margin:16px 0 4px}
.bh-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border:1px solid var(--c-line);border-radius:999px;text-decoration:none}
.bh-btn--primary{background:#111;color:#fff;border-color:#111}
.bh-btn--primary:hover{box-shadow:0 8px 28px rgba(0,0,0,.18);transform:translateY(-1px)}

/* Modal CSS-only */
.bh-modal{position:fixed;inset:0;display:none;z-index:99999}
.bh-modal:target{display:block !important}
.bh-modal__overlay{position:absolute;inset:0;display:block;background:rgba(0,0,0,.68);backdrop-filter:blur(3px) saturate(105%)}
.bh-modal__dialog{position:relative;z-index:1;max-width:760px;margin:6vh auto;background:#fff;border-radius:18px;border:1px solid var(--c-line);padding:22px;max-height:88vh;overflow:auto;box-shadow:0 24px 80px rgba(0,0,0,.35)}
.bh-modal__close{position:absolute;top:8px;right:12px;width:36px;height:36px;border:1px solid var(--c-line);border-radius:999px;background:#fff;display:grid;place-items:center;font-size:20px;text-decoration:none;color:inherit}
.bh-modal__title{margin:.2rem 0;font-size:1.25rem}
.bh-modal__subtitle{margin:0 0 .6rem;color:var(--c-muted)}

/* Form look */
.bh-formcard{border:1px solid var(--c-line);border-radius:24px;padding:18px;background:#fff;box-shadow:0 6px 28px rgba(0,0,0,.06)}
.bh-grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:760px){.bh-grid2{grid-template-columns:1fr}}
.bh-colspan{grid-column:1/-1}
.bh-field{display:flex;flex-direction:column;gap:6px}
.bh-label{font-size:.85rem;letter-spacing:.02em;text-transform:uppercase;color:#2b2b2b}
.bh-input,.bh-textarea{width:100%;border:1px solid var(--c-line);border-radius:14px;padding:11px 12px;background:#fff}
.bh-input:focus,.bh-textarea:focus{outline:none;border-color:#cfd4da;box-shadow:0 0 0 3px rgba(0,0,0,.03)}
.bh-fieldset{border:1px solid var(--c-line);border-radius:18px;padding:12px;margin:12px 0}
.bh-fieldset>legend{padding:0 .5rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--c-silver)}
.bh-help{margin:.2rem 0;color:var(--c-muted);font-size:.9rem}
.bh-actions{display:flex;gap:12px;align-items:center;margin-top:12px}

/* Messages de confirmation / erreurs */
.bh-alert{
  border-radius:14px;
  padding:10px 12px;
  margin-bottom:12px;
  font-size:.95rem;
  line-height:1.4;
}
.bh-alert--success{
  background:#ecfdf3;
  border:1px solid #bbf7d0;
  color:#166534;
}
.bh-alert--error{
  background:#fef2f2;
  border:1px solid #fecaca;
  color:#991b1b;
}
.bh-form-errors ul{
  margin:6px 0 0;
  padding-left:18px;
}

/* Bandeau / pill */
.bh-formcard__head{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  border-bottom:1px solid var(--c-line); padding-bottom:10px; margin-bottom:14px;
}
.bh-formcard__title{ margin:0; font-size:1.1rem; }
.bh-formcard__sub{ margin:2px 0 0 0; color:#6b7280; font-size:.95rem; }
.bh-pill{
  border:1px solid var(--c-line); border-radius:999px; padding:6px 10px;
  font-size:.9rem; color:#6b7280; white-space:nowrap;
}

/* Dropzones */
.bh-drop{ 
  position:relative; display:grid; align-content:center; gap:6px; min-height:110px; padding:12px; 
  border:1px dashed #d6dbe1; border-radius:16px; text-align:center; background:#fafafa;
  cursor:pointer;
}
.bh-drop__title{ font-weight:600; }
.bh-drop__hint{ font-size:.9rem; color:var(--c-muted); }

/* État fichier ajouté + preview */
#clean-modal-{{ section.id }} .bh-drop{
  position: relative;
  min-height: 140px;
}
#clean-modal-{{ section.id }} .bh-drop.has-file{
  background:#fff;
  border-color:#d1d5db;
}
#clean-modal-{{ section.id }} .bh-drop.has-file::after{
  content:"✓";
  position:absolute;
  top:8px; right:8px;
  width:20px; height:20px;
  border-radius:999px;
  display:grid; place-items:center;
  background:#111; color:#fff;
  font-size:.8rem; line-height:1;
}
#clean-modal-{{ section.id }} .bh-drop__preview{
  display: none;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 8px;
  margin-top: 10px;
  text-align: center;
}
#clean-modal-{{ section.id }} .bh-drop.has-file .bh-drop__preview{ display:flex; }
#clean-modal-{{ section.id }} .bh-drop__preview img{
  width: 56px; height: 56px; object-fit: cover;
  border-radius: 8px; border: 1px solid #ececec; box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
#clean-modal-{{ section.id }} .bh-drop__filename{
  display: block;
  max-width: 85%;
  text-align: center;
  word-break: break-word;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Cache l’UI par défaut d’Uploadcare (boutons bleus) */
[role="uploadcare-uploader"] + .uploadcare--widget,
#clean-modal-{{ section.id }} .uploadcare--widget{
  display: none !important;
}

/* Textarea */
.bh-textarea{
  font-size:1rem; line-height:1.35; padding:11px 12px;
  border:1px solid var(--c-line); border-radius:14px; background:#fff;
  font-family:inherit; color:var(--c-text,#111); min-height:120px; resize:vertical;
}
.bh-textarea::placeholder{ color:var(--c-muted); opacity:1; }

/* Boutons noirs BrandHub */
.bh-clean .bh-btn,
.bh-modal .bh-btn,
.bh-clean .bh-btn:link,
.bh-clean .bh-btn:visited {
  border: 1px solid #111;
  border-radius: 999px;
  text-decoration: none;
}
.bh-clean .bh-btn--primary,
.bh-modal .bh-btn--primary,
.bh-modal button[type="submit"],
.bh-modal input[type="submit"] {
  background: #111 !important;
  color: #fff !important;
  border-color: #111 !important;
}
.bh-clean .bh-btn--primary:hover,
.bh-clean .bh-btn--primary:focus,
.bh-modal .bh-btn--primary:hover,
.bh-modal .bh-btn--primary:focus,
.bh-modal button[type="submit"]:hover,
.bh-modal button[type="submit"]:focus {
  box-shadow: 0 8px 28px rgba(0,0,0,.18);
  transform: translateY(-1px);
}
.bh-clean .bh-btn--primary svg,
.bh-modal .bh-btn--primary svg { stroke: #fff; fill: none; }

/* Séparateur CTA / FAQ */
.bh-pricing{
  padding-bottom: 30px;
  border-bottom: 1px solid var(--c-line);
  margin-bottom: 30px;
}
.bh-faq{ margin-top: 10px; }

/* Image au-dessus des tarifs */
.bh-price-figure{
  display:block;
  margin: 6px auto 12px;
  width: clamp(520px, 70%, 920px);
  height: 320px;
  overflow:hidden;
  border-radius:16px;
  border:1px solid var(--c-line);
  box-shadow:0 10px 32px rgba(0,0,0,.06);
}
.bh-price-figure img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
@media (max-width: 900px){
  .bh-price-figure{
    width:100%;
    height:220px;
    margin:6px 0 10px;
  }
}

/* Titre & Sous-titre style global */
.bh-clean__hero{max-width:900px}
.bh-clean .bh-title{
  font-size: clamp(22px, 3.2vw, 28px);
  line-height: 1.2;
  margin: 6px 0 4px 0;
  font-weight: 500;
  letter-spacing: .01em;
  color: var(--c-text,#111);
}
.bh-clean .bh-subtitle{
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 500;
  font-size: clamp(12px, 1.5vw, 14px);
  line-height: 1.6;
  margin: 0 0 16px 0;
  color: var(--c-muted,#6b7280);
}
@media (max-width: 749px){
  .bh-clean .bh-title{ margin-top: 4px; }
  .bh-clean .bh-subtitle{ margin-bottom: 12px; }
}

/* FAQ plus à gauche (desktop) */
.bh-accordion .bh-acc{
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}
.bh-accordion .bh-acc{ margin-bottom: 10px; }
.bh-accordion .bh-acc summary.bh-acc__sum{ padding: 20px 0; }
.bh-accordion .bh-acc[open] .bh-acc__panel{ margin: 0px 0 16px 0; }
@media (max-width:749px){
  .bh-accordion .bh-acc{ margin-bottom: 8px; }
  .bh-accordion .bh-acc summary.bh-acc__sum{ padding: 16px 0; }
}
/* === Nettoyer — FAQ même style que Authentifier (desktop) === */
@media (min-width: 900px){
  /* conteneur FAQ */
  .bh-clean .bh-auth__faq{
    max-width: 1080px;
    margin: 60px auto 0;
    text-align: left;
  }

  /* titre "Questions fréquentes" centré */
  .bh-clean .bh-auth__faq h2{
    text-align: center !important;
    margin-bottom: 32px;
  }

  /* colonne de questions / réponses centrée sous le titre */
  .bh-clean .bh-auth__faq .bh-accordion{
    max-width: 720px;
    margin: 24px auto 0;
  }

  /* question et réponse bien alignées à gauche, sans décalage supplémentaire */
  .bh-clean .bh-auth__faq .bh-acc summary.bh-acc__sum{
    padding-left: 0;
    text-align: left;
    justify-content: flex-start;
  }

  .bh-clean .bh-auth__faq .bh-acc__panel{
    padding-left: 0;
    text-align: left;
  }
}


/* ===== Authentifier — réduire / recaler le TEXTE des réponses ===== */
@media (min-width: 900px){
  /* Colonne de texte des réponses uniquement */
  #bh-auth-{{ section.id }} .bh-auth__faq .bh-acc__panel{
    max-width: 1080px !important;   /* colonne plus étroite */
    margin-left: 100px !important;  /* décale un peu vers la droite */
    margin-right: auto !important;
    text-align: left !important;
  }
}

/* Nettoyer — centrer le hero + les cartes tarifs sur mobile */
@media (max-width: 749px){

  /* Titre + sous-titre */
  .bh-clean__hero{
    text-align: center;
  }
  .bh-clean__hero .bh-kicker,
  .bh-clean__hero .bh-title,
  .bh-clean__hero .bh-subtitle{
    text-align: center;
  }

  /* Les 3 cartes de prix (simple / approfondi / rénovation) */
  .bh-clean .bh-pricegrid .bh-card{
    text-align: center;
  }
}



/* Nettoyer — FAQ même style que Authentifier (desktop) */
@media (min-width: 900px){
  /* conteneur FAQ */
  .bh-clean .bh-auth__faq{
    max-width: 1080px;
    margin: 60px auto 0;
  }

  /* titre centré */
  .bh-clean .bh-auth__faq h2{
    text-align: center !important;
    margin-bottom: 32px;
  }

  /* colonne de questions / réponses centrée */
  .bh-clean .bh-auth__faq .bh-accordion{
    max-width: 720px;
    margin: 24px auto 0;
  }

  /* on enlève le décalage à gauche des questions + réponses */
  .bh-clean .bh-auth__faq details,
  .bh-clean .bh-auth__faq summary.bh-acc__sum,
  .bh-clean .bh-auth__faq .bh-acc__panel{
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-align: left;
  }
}



/* Nettoyer — FAQ alignée comme sur Authentifier (desktop) */
@media (min-width: 900px){
  /* le bloc entier prend la largeur, avec marge 80px comme Authentifier */
  .bh-clean .bh-auth__faq{
    max-width: none !important;
    margin: 60px 20px 0 20px !important;
    text-align: left !important;
  }

  /* la colonne de questions n’est plus centrée : elle suit le flux à gauche */
  .bh-clean .bh-auth__faq .bh-accordion{
    max-width: 1080px !important;
    margin: 24px 0 0 0 !important;
  }

  /* on enlève tout décalage supplémentaire */
  .bh-clean .bh-auth__faq .bh-acc,
  .bh-clean .bh-auth__faq summary.bh-acc__sum,
  .bh-clean .bh-auth__faq .bh-acc__panel{
    padding-left: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
  }
}
/* ---- Services Landing (luxe) ---- */
.services-landing{padding:56px 0}
.services-landing__header{max-width:900px;margin:0 auto 28px;text-align:center}
.services-landing__eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:12px;opacity:.7}
.services-landing__title{font-size:clamp(24px,3vw,36px);line-height:1.15;margin:.25rem 0 .5rem}
.services-landing__subtitle{opacity:.8}

.services-grid{display:grid;gap:20px}
@media(min-width:750px){.services-grid{grid-template-columns:repeat(3,1fr)}}

.svc-card{border:1px solid #e7e7e7;border-radius:18px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:transform .25s ease, box-shadow .25s ease}
.svc-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.06)}
.svc-card__media{aspect-ratio:10/10;object-fit:cover;width:100%}
.svc-card__body{padding:18px}
.svc-card__title{font-size:18px;margin:0 0 .35rem}
.svc-card__text{opacity:.85;margin:0 0 12px}
.svc-card__cta{display:inline-flex;align-items:center;gap:8px;border:1px solid #111;border-radius:999px;padding:8px 14px;text-decoration:none}


/* --- Centrage du contenu dans chaque carte --- */
.svc-card { text-align: center; }

.svc-card__body{
  display: flex;
  flex-direction: column;
  align-items: center;   /* centre titre/texte/bouton */
}

/* L'image/icone au-dessus : petite et centrée, pas plein-bleed */
.svc-card__media{
  display: block;
  margin: 18px auto 6px; /* centre & espace */
  width: auto;
  height: auto;
  max-width: 140px;      /* ajuste la taille de l’icône ici */
  object-fit: contain;
  aspect-ratio: auto;    /* on annule le carré plein-bleed */
}

/* Un peu d’air et centrage du texte */
.svc-card__title{ margin: 8px 0 6px; }
.svc-card__text{ margin: 0 0 10px; }

/* Bouton centré */
.svc-card__cta{ margin: 10px auto 0; }


/* Boutons "En savoir plus" sur la page Services */
.bh-services .bh-btn{
  background:#111;
  color:#fff;
  border-color:#111;
  text-decoration:none;
}
.bh-services .bh-btn:hover,
.bh-services .bh-btn:focus{
  box-shadow:0 8px 28px rgba(0,0,0,.18);
  transform:translateY(-1px);
}
.bh-services .bh-btn svg{ /* l’icône flèche en blanc si présente */
  stroke:#fff;
}

/* === Bouton "En savoir plus" : fond noir, texte blanc === */
.services-landing .svc-card__cta,
.services-landing .svc-card__cta:link,
.services-landing .svc-card__cta:visited{
  background:#111;
  color:#fff;
  border-color:#111;
  text-decoration:none;
}
.services-landing .svc-card__cta:hover,
.services-landing .svc-card__cta:focus{
  color:#fff;
  box-shadow:0 8px 28px rgba(0,0,0,.18);
  transform:translateY(-1px);
}
/* si un pictogramme <svg> est ajouté dans le lien, le forcer en blanc */
.services-landing .svc-card__cta svg{ stroke:#fff; fill:none; }

/* — Paragraphes des cartes : plus petits + justifiés (desktop & mobile) — */
.services-landing .svc-card__text{
  text-align: justify !important;   /* parent centre => on force */
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  line-height: 1.6;
  opacity: .9;                      /* un peu plus lisible */
  margin: 0 0 10px;
}

/* Desktop */
@media (min-width: 750px){
  .services-landing .svc-card__text{ font-size: 15px; }
}

/* Mobile */
@media (max-width: 749px){
  .services-landing .svc-card__text{ font-size: 13px; }
}



/* — Services Landing : typo & boutons un peu plus petits — */

/* En-tête de section */
.services-landing .services-landing__eyebrow{ font-size:11px; }
.services-landing .services-landing__title{
  /* plus petit que clamp(24px,3vw,36px) */
  font-size: clamp(22px, 2.4vw, 30px);
}
.services-landing .services-landing__subtitle{
  opacity:.85;
}

@media (min-width:750px){ /* Desktop */
  .services-landing .services-landing__subtitle{ font-size:14px; }
  .services-landing .svc-card__title{ font-size:16px; }         /* 18 → 16 */
  .services-landing .svc-card__text{ font-size:13px; }          /* 14 → 13 (déjà justifié) */
  .services-landing .svc-card__cta{
    font-size:13px;                                             /* 14 → 13 env. */
    padding:7px 12px;                                           /* un peu plus compact */
    gap:6px;
  }
  .services-landing .svc-card__cta span[aria-hidden="true"]{ font-size:14px; }
}

@media (max-width:749px){ /* Mobile */
  .services-landing .services-landing__subtitle{ font-size:13px; }
  .services-landing .svc-card__title{ font-size:15px; }         /* 18 → 15 */
  .services-landing .svc-card__text{ font-size:12.5px; }        /* 13 → 12.5 */
  .services-landing .svc-card__cta{
    font-size:12px;                                             /* 13 → 12 */
    padding:6px 11px;                                           /* plus fin mais confortable */
    gap:6px;
  }
  .services-landing .svc-card__cta span[aria-hidden="true"]{ font-size:13px; }
}