/* ============================================================
   audit-campaign.css
   Pages de campagne :
   - /audit-site-web-entreprise/
   - /audit-demande-recue/
   Palette alignée sur styles.css (thème cream/ink du site).
   Toutes les classes sont préfixées audit-campaign- pour éviter
   toute collision avec le CSS global.
   ============================================================ */

.audit-campaign-page{
  --ac-cream:#F2EDE4;
  --ac-ink:#1A1612;
  --ac-ink-soft:#5C5248;
  --ac-ink-faint:#9C9088;
  --ac-accent:#C8501A;
  --ac-accent-hover:#E05A20;
  --ac-rule:rgba(26,22,18,.12);
  --ac-surface:#ffffff;
  --ac-surface-alt:#EDE6D8;
  --ac-radius:18px;
  --ac-pad-x:clamp(1.5rem,3vw,3rem);
  background:var(--ac-cream);
  color:var(--ac-ink);
}

/* ----------- HERO ----------- */
.audit-campaign-hero{
  max-width:1240px;
  margin:0 auto;
  padding:6rem var(--ac-pad-x) 3rem;
  border-bottom:1px solid var(--ac-rule);
}
.audit-campaign-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  font-family:var(--mono,ui-monospace,Menlo,monospace);
  font-size:.78rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ac-ink-soft);
  margin:0 0 1.4rem;
}
.audit-campaign-eyebrow::before{
  content:"";
  width:8px;height:8px;border-radius:50%;
  background:var(--ac-accent);
  box-shadow:0 0 0 4px rgba(200,80,26,.15);
}
.audit-campaign-h1{
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(2.4rem,6vw,4.8rem);
  font-weight:900;
  line-height:1.05;
  letter-spacing:-.02em;
  margin:0 0 1.4rem;
  max-width:20ch;
  color:var(--ac-ink);
}
.audit-campaign-h1 em{
  font-style:italic;
  color:var(--ac-accent);
}
.audit-campaign-lead{
  max-width:62ch;
  color:var(--ac-ink-soft);
  font-size:1.05rem;
  line-height:1.7;
  margin:0 0 1.8rem;
}
.audit-campaign-cta-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:1rem 1.2rem;
  margin-top:.4rem;
}
.audit-campaign-btn{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  min-height:54px;
  padding:0 1.6rem;
  border-radius:999px;
  background:var(--ac-accent);
  color:#fff;
  font-weight:700;
  font-size:1rem;
  text-decoration:none;
  border:none;
  cursor:pointer;
  font-family:inherit;
  transition:transform .15s ease, background .15s ease, box-shadow .15s ease;
  box-shadow:0 4px 14px rgba(200,80,26,.18);
}
.audit-campaign-btn:hover{
  transform:translateY(-1px);
  background:var(--ac-accent-hover);
  box-shadow:0 8px 22px rgba(200,80,26,.28);
}
.audit-campaign-btn .arrow{
  transition:transform .15s ease;
  display:inline-block;
}
.audit-campaign-btn:hover .arrow{
  transform:translateX(3px);
}
.audit-campaign-btn-light{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  min-height:54px;
  padding:0 1.6rem;
  border-radius:999px;
  border:1px solid var(--ac-ink);
  background:transparent;
  color:var(--ac-ink);
  font-weight:600;
  font-size:1rem;
  text-decoration:none;
  cursor:pointer;
  font-family:inherit;
  transition:background .15s ease, color .15s ease;
}
.audit-campaign-btn-light:hover{
  background:var(--ac-ink);
  color:var(--ac-cream);
}
.audit-campaign-reassurance{
  margin-top:1.6rem;
  font-size:.95rem;
  color:var(--ac-ink-soft);
  max-width:60ch;
  line-height:1.6;
  border-left:2px solid var(--ac-accent);
  padding-left:.95rem;
}

/* ----------- SECTIONS GENERIQUES ----------- */
.audit-campaign-section{
  max-width:1240px;
  margin:0 auto;
  padding:4rem var(--ac-pad-x);
  border-bottom:1px solid var(--ac-rule);
}
.audit-campaign-section-title{
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(1.9rem,3.6vw,2.8rem);
  font-weight:900;
  font-style:italic;
  letter-spacing:-.015em;
  line-height:1.15;
  margin:0 0 1.2rem;
  max-width:26ch;
  color:var(--ac-ink);
}
.audit-campaign-section p{
  max-width:64ch;
  color:var(--ac-ink-soft);
  font-size:1.04rem;
  line-height:1.75;
  margin:0 0 1rem;
}
.audit-campaign-section p strong{
  color:var(--ac-ink);
  font-weight:700;
}

/* ----------- LISTES ----------- */
.audit-campaign-list{
  list-style:none;
  margin:1.4rem 0 0;
  padding:0;
  display:grid;
  gap:.6rem;
  max-width:64ch;
}
.audit-campaign-list li{
  position:relative;
  padding:.7rem 0 .7rem 2rem;
  color:var(--ac-ink);
  font-size:1rem;
  line-height:1.55;
  border-bottom:1px solid var(--ac-rule);
}
.audit-campaign-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:1.05rem;
  width:12px;height:12px;
  border-radius:50%;
  background:var(--ac-accent);
}
.audit-campaign-list li:last-child{
  border-bottom:none;
}
.audit-campaign-list li strong{
  color:var(--ac-ink);
  font-weight:700;
}

/* Variante 2 colonnes */
.audit-campaign-list--two-col{
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-width:none;
  gap:.4rem 2rem;
}

/* ----------- SECTION ABOUT ----------- */
.audit-campaign-about{
  background:var(--ac-surface-alt);
}
.audit-campaign-about p{
  max-width:64ch;
}

/* ----------- FORMULAIRE ----------- */
.audit-campaign-form-section{
  background:var(--ac-ink);
  border-bottom:none;
}
.audit-campaign-form-section .audit-campaign-section-title,
.audit-campaign-form-section .audit-campaign-form-title{
  color:var(--ac-cream);
}
.audit-campaign-form-wrap{
  max-width:760px;
  margin:0 auto;
  padding:clamp(1.6rem,3vw,2.4rem);
  background:var(--ac-cream);
  border:1px solid var(--ac-rule);
  border-radius:var(--ac-radius);
  box-shadow:0 12px 40px rgba(0,0,0,.18);
}
.audit-campaign-form-title{
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(1.5rem,3vw,2.1rem);
  font-weight:900;
  font-style:italic;
  margin:0 0 .5rem;
  letter-spacing:-.015em;
  color:var(--ac-ink);
}
.audit-campaign-form-intro{
  color:var(--ac-ink-soft);
  font-size:.98rem;
  line-height:1.6;
  margin:0 0 1.6rem;
}
.audit-campaign-form{
  display:grid;
  gap:1rem;
}
.audit-campaign-form-row{
  display:grid;
  gap:1rem;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.audit-campaign-field{
  display:flex;
  flex-direction:column;
  gap:.4rem;
  min-width:0;
}
.audit-campaign-field label{
  font-size:.82rem;
  font-weight:700;
  color:var(--ac-ink);
  letter-spacing:.04em;
  text-transform:uppercase;
}
.audit-campaign-field label .req{
  color:var(--ac-accent);
  margin-left:.15rem;
}
.audit-campaign-field input,
.audit-campaign-field select,
.audit-campaign-field textarea{
  width:100%;
  min-height:50px;
  border-radius:12px;
  border:1px solid var(--ac-rule);
  background:#fff;
  color:var(--ac-ink);
  padding:.8rem 1rem;
  font:inherit;
  font-size:1rem;
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.audit-campaign-field textarea{
  min-height:130px;
  resize:vertical;
  line-height:1.6;
}
.audit-campaign-field input::placeholder,
.audit-campaign-field textarea::placeholder{
  color:var(--ac-ink-faint);
  opacity:1;
}
.audit-campaign-field input:focus,
.audit-campaign-field select:focus,
.audit-campaign-field textarea:focus{
  border-color:var(--ac-accent);
  box-shadow:0 0 0 4px rgba(200,80,26,.12);
}
.audit-campaign-field select{
  appearance:none;
  -webkit-appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%231A1612' d='M6 8 0 0h12z'/></svg>");
  background-repeat:no-repeat;
  background-position:right 1rem center;
  padding-right:2.4rem;
}
.audit-campaign-field select option{
  background:#fff;
  color:var(--ac-ink);
}
.audit-campaign-field input:-webkit-autofill,
.audit-campaign-field textarea:-webkit-autofill,
.audit-campaign-field select:-webkit-autofill{
  -webkit-text-fill-color:var(--ac-ink);
  -webkit-box-shadow:0 0 0 1000px #fff inset;
  caret-color:var(--ac-ink);
  transition:background-color 9999s ease-in-out 0s;
}
.audit-campaign-form-submit{
  margin-top:.8rem;
  display:flex;
  align-items:center;
  gap:1rem;
  flex-wrap:wrap;
}
.audit-campaign-hp{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.audit-campaign-rgpd{
  margin:1rem 0 0;
  font-size:.85rem;
  line-height:1.6;
  color:var(--ac-ink-soft);
}

/* ----------- THANK YOU ----------- */
.audit-campaign-thanks{
  max-width:760px;
  margin:0 auto;
  padding:6rem var(--ac-pad-x) 5rem;
  text-align:left;
}
.audit-campaign-thanks-mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:64px;height:64px;
  border-radius:50%;
  background:rgba(200,80,26,.12);
  border:1.5px solid var(--ac-accent);
  margin-bottom:1.6rem;
}
.audit-campaign-thanks-mark svg{
  width:28px;height:28px;
  stroke:var(--ac-accent);
}
.audit-campaign-thanks h1{
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(2.2rem,5vw,3.6rem);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.1;
  margin:0 0 1.2rem;
  color:var(--ac-ink);
}
.audit-campaign-thanks p{
  color:var(--ac-ink-soft);
  font-size:1.05rem;
  line-height:1.75;
  margin:0 0 1.4rem;
  max-width:60ch;
}
.audit-campaign-thanks p strong{
  color:var(--ac-ink);
  font-weight:700;
}

/* ----------- RESPONSIVE ----------- */
@media (max-width:900px){
  .audit-campaign-hero{padding-top:5rem;padding-bottom:2.5rem}
  .audit-campaign-section{padding:3rem var(--ac-pad-x)}
  .audit-campaign-list--two-col{grid-template-columns:1fr;gap:.4rem}
}

@media (max-width:640px){
  .audit-campaign-hero{padding-top:4rem}
  .audit-campaign-h1{font-size:clamp(2rem,9vw,2.8rem)}
  .audit-campaign-form-row{grid-template-columns:1fr}
  .audit-campaign-cta-row{flex-direction:column;align-items:stretch}
  .audit-campaign-btn,
  .audit-campaign-btn-light{width:100%;justify-content:center}
  .audit-campaign-thanks{padding:4rem var(--ac-pad-x) 3rem}
  .audit-campaign-form-wrap{padding:1.4rem}
}
