/* Choix de l'offre et demande de devis, avec les couleurs partagées du site. */
.offer-jump, .contact-choice { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin:24px 0 0; }
.offer-jump a { padding:12px 18px; border:1px solid var(--gray-300); border-radius:10px; color:var(--text-body); background:var(--white); font-weight:600; }
.offer-comparison { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:28px; }
.offer-comparison article { padding:26px; background:var(--white); border:1px solid var(--gray-200); border-top:3px solid var(--primary); border-radius:14px; }
.offer-comparison h3 { margin:0 0 12px; color:var(--gray-900); }
.offer-comparison p { line-height:1.65; color:var(--text-secondary); margin:12px 0; }
.quote-layout { display:grid; grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr); gap:48px; align-items:start; }
.quote-intro h2 { font-size:clamp(26px,3vw,36px); line-height:1.2; margin:12px 0 20px; color:var(--gray-900); }
.quote-intro p, .quote-intro li { color:var(--text-secondary); line-height:1.7; margin-bottom:14px; }
.quote-intro ol { padding-left:20px; }
.quote-form { background:var(--white); border:1px solid var(--gray-200); border-radius:18px; padding:28px; min-width:0; }
.quote-form fieldset { border:0; padding:0; margin:0; min-width:0; }
.quote-form legend { font-weight:700; color:var(--gray-900); margin-bottom:8px; }
.quote-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:20px 0; }
.quote-field { display:flex; flex-direction:column; gap:7px; min-width:0; font-size:14px; font-weight:600; color:var(--text-body); }
.quote-label { display:inline-flex; align-items:baseline; gap:3px; }
.quote-wide { grid-column:1/-1; }
.quote-field :is(input,select,textarea) { width:100%; min-width:0; box-sizing:border-box; padding:12px; border:1px solid var(--gray-300); border-radius:8px; background:var(--white); color:var(--gray-900); font:inherit; font-weight:400; }
.quote-field textarea { resize:vertical; min-height:130px; }
.quote-form small { display:block; color:var(--text-secondary); font-weight:400; line-height:1.6; }
.quote-privacy { display:flex; align-items:flex-start; gap:10px; line-height:1.6; margin:18px 0; color:var(--text-body); font-size:14px; }
.quote-privacy input { flex-shrink:0; width:18px; height:18px; margin-top:4px; }
.quote-form a { text-decoration:underline; text-underline-offset:3px; }
.quote-status { line-height:1.65; color:var(--text-body); overflow-wrap:anywhere; margin-top:18px; }
.quote-status:empty { margin:0; }
.quote-form :is(input,textarea,select,button,a):focus-visible, .offer-jump a:focus-visible { outline:3px solid #f97316; outline-offset:3px; }
#devis,#rdv,#formats,#programmes,#formations { scroll-margin-top:100px; }
@media(max-width:850px) { .quote-layout { grid-template-columns:1fr; gap:24px; } .offer-comparison { grid-template-columns:1fr; } }
@media(max-width:520px) { .quote-grid { grid-template-columns:1fr; } .quote-form { padding:20px 16px; } .contact-choice .btn { width:100%; white-space:normal; } }

/* Les trois formats ont la même hiérarchie visuelle : aucun fond sombre. */
body.ui-polish.layout-refresh .format-card-featured {
  border-color:var(--gray-200);
  background:var(--white);
  color:var(--text-primary);
}
body.ui-polish.layout-refresh .format-card-featured .format-index { color:var(--text-secondary); }
body.ui-polish.layout-refresh .format-card-featured .format-badge {
  background:color-mix(in srgb,var(--primary) 9%,var(--white));
  color:var(--primary);
}
body.ui-polish.layout-refresh .format-card-featured h3 { color:var(--text-primary); }
body.ui-polish.layout-refresh .format-card-featured .format-duration strong { color:var(--primary); }
body.ui-polish.layout-refresh .format-card-featured .format-duration span,
body.ui-polish.layout-refresh .format-card-featured>p { color:var(--text-secondary); }
body.ui-polish.layout-refresh .format-card-featured>a {
  border-color:var(--gray-200);
  color:var(--primary);
}
