/* Formulaire de contact AGS – styles isolés (préfixe .cf) */
.cf-wrap{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:40px;align-items:start}
.cf{background:#fff;border:1px solid #F0DFC4;border-top:4px solid #F25A07;border-radius:14px;padding:30px;box-shadow:0 6px 24px rgba(74,31,8,.07)}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cf-field{margin-bottom:18px;min-width:0}
.cf label{display:block;font-weight:600;color:#4A1F08;margin-bottom:6px;font-size:.95rem}
.cf-req{color:#C94700}.cf-opt{font-weight:400;color:#7A6A5C;font-size:.85rem}
.cf input[type=text],.cf input[type=email],.cf input[type=tel],.cf textarea{width:100%;box-sizing:border-box;font:inherit;font-size:1rem;color:#2A1A10;background:#FFFCF3;border:1.5px solid #E3CFAE;border-radius:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.cf textarea{resize:vertical;min-height:150px;line-height:1.5}
.cf input:focus,.cf textarea:focus{outline:none;border-color:#F25A07;box-shadow:0 0 0 3px rgba(242,90,7,.18)}
.cf [aria-invalid=true]{border-color:#C0392B;background:#FFF5F3}
.cf-err{color:#B3261E;font-size:.85rem;margin:6px 0 0;min-height:0}
.cf-err:empty{display:none}
.cf-meta{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.cf-count{font-size:.8rem;color:#7A6A5C;margin-top:6px;white-space:nowrap;margin-left:auto}
.cf-chk{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;line-height:1.45;cursor:pointer}
.cf-chk input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:#F25A07}
.cf-chk a{color:#C94700}
.cf-captcha{margin:0 0 16px;min-width:0;overflow:hidden}
.cf-note{font-size:.85rem;color:#6B5848;line-height:1.5;margin:4px 0 16px}
.cf-status{min-height:1.4em;font-weight:600;margin:0 0 12px}
.cf-status.is-error{color:#B3261E}.cf-status.is-info{color:#4A1F08}
.cf-btn{width:100%;justify-content:center;font-size:1.05rem;padding:14px 22px;cursor:pointer}
.cf-btn[disabled]{opacity:.65;cursor:wait}
.cf-hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.cf-side{background:#FFF6DC;border-radius:14px;padding:26px;border:1px solid #F0DFC4}
.cf-side h2{margin-top:0;font-size:1.25rem}
.cf-small{font-size:.82rem;color:#6B5848;line-height:1.5;border-top:1px solid #EBD9B6;padding-top:14px;margin-top:18px}
@media (max-width:860px){.cf-wrap{grid-template-columns:1fr;gap:26px}.cf-side{order:2}}
@media (max-width:560px){.cf{padding:20px 16px}.cf-row{grid-template-columns:1fr;gap:0}.cf input,.cf textarea{font-size:16px}}
@media (prefers-reduced-motion:reduce){.cf *{transition:none!important}}

/* Liste déroulante du sujet */
.cf select{width:100%;box-sizing:border-box;font:inherit;font-size:1rem;color:#2A1A10;background:#FFFCF3;border:1.5px solid #E3CFAE;border-radius:10px;padding:12px 14px;min-height:49px;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.cf select:focus{outline:none;border-color:#F25A07;box-shadow:0 0 0 3px rgba(242,90,7,.18)}
@media (max-width:560px){.cf select{font-size:16px}}

/* Version compacte : le formulaire tient sur un écran d'ordinateur */
.cf-hero{padding-top:16px!important;padding-bottom:12px!important}
.cf-hero h1{font-size:clamp(1.5rem,3vw,2rem)!important;margin:4px 0 2px!important}
.cf-hero .lead{font-size:.95rem!important;margin:2px 0 0!important}
.cf-section{padding-top:22px!important;padding-bottom:26px!important}
.cf{padding:20px 24px}
.cf-field{margin-bottom:12px}
.cf label{margin-bottom:4px;font-size:.9rem}
.cf input[type=text],.cf input[type=email],.cf input[type=tel],.cf textarea,.cf select{padding:9px 12px}
.cf select{min-height:0}
.cf textarea{min-height:84px}
.cf-note{margin:0 0 8px;font-size:.8rem}
.cf-status{min-height:0;margin:0 0 6px}
.cf-status:empty{display:none}
.cf-actions{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}
.cf-captcha{margin:0}
.cf-actions .cf-btn{width:100%;padding:13px 18px}
@media (max-width:860px){.cf-actions{grid-template-columns:1fr}.cf-hero .lead{display:none}}

/* Réglages fins (hauteur) */
.cf label{margin:0 0 3px}
.cf .cf-chk{margin:0}
.cf input[type=text],.cf input[type=email],.cf input[type=tel],.cf textarea,.cf select{line-height:1.3;font-size:.97rem}
.cf textarea{min-height:0;height:72px}
.cf-hero .crumb{margin-bottom:2px}
.cf-hero .lead{max-width:none;margin-top:2px}
.cf-hero{padding-top:12px!important;padding-bottom:10px!important}
.cf-section{padding-top:16px!important;padding-bottom:20px!important}
.cf{padding:16px 22px 18px}
.cf-field{margin-bottom:9px}
.cf-meta{margin-top:-2px}
.cf-count{margin-top:2px}
.cf-chk{font-size:.85rem;line-height:1.35}
.cf-note{margin:0 0 6px;font-size:.78rem}
@media (max-width:560px){.cf input[type=text],.cf input[type=email],.cf input[type=tel],.cf textarea,.cf select{font-size:16px}}
