/*
 * Hero — Courtage : CSS de bloc, porté verbatim depuis design/pages/3.Courtage.html
 * (lignes 41-79 du <style> local de la maquette certifiée), scopé sous le wrapper
 * de bloc .wp-block-cogestim-hero-courtage pour ne rien faire fuiter ailleurs.
 * Composants LIBRARY consommés (non redéfinis ici) : .btn, .field--boxed,
 * .field-lab, .field-in, .field-msg, .lab, .h3, .em, .consent (cogestim-components.css).
 */
.wp-block-cogestim-hero-courtage.hero{
	position:relative;overflow:hidden;color:var(--cog-on-dark);
	min-height:var(--cog-hero-h-full);
	display:flex;flex-direction:column;
	padding:clamp(80px,9.5vw,140px) 0 clamp(60px,7vw,96px);
}
.wp-block-cogestim-hero-courtage .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;z-index:0}
/* Vidéo de fond (optionnel, écart maquette assumé) : couvre comme .hero-img, par-dessus l'image (poster/repli). */
.wp-block-cogestim-hero-courtage .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;z-index:0}
.wp-block-cogestim-hero-courtage .hero-video.is-fading{opacity:0}
.wp-block-cogestim-hero-courtage .hero-video.is-playing{opacity:1;transition:opacity .4s ease}
@media (prefers-reduced-motion:reduce){
	.wp-block-cogestim-hero-courtage .hero-video{display:none}
}
.wp-block-cogestim-hero-courtage .hero-overlay{position:absolute;inset:0;z-index:1;background:rgba(16,14,18,.25)}
/* 16/10 — voile web abaissé à .25 (décision Luis ; .15 testé, kicker et nav trop pâles). Mobile : .48 conservé, le texte y est pleine largeur et .25 serait illisible. */
@media (max-width:900px){.wp-block-cogestim-hero-courtage .hero-overlay{background:rgba(16,14,18,.48)}}
/* 03/11 — Classe opt-in par page `hero--voile-fort` (posée dans l'attribut className du bloc ; aujourd'hui : Carrière, Qualité, Direction, agence de Lausanne) : voile desktop .50 au lieu de .25 — images à vêtements blancs/clairs, CTA peu lisible, décision Luis de ne pas déplacer les CTA ; .40 testé et jugé insuffisant. Mobile inchangé (.48, règle ci-dessus). */
@media (min-width:901px){.wp-block-cogestim-hero-courtage.hero--voile-fort .hero-overlay{background:rgba(16,14,18,.50)}}
.wp-block-cogestim-hero-courtage .wrap{position:relative;z-index:2;width:100%;display:flex;flex-direction:column;flex:1}
.wp-block-cogestim-hero-courtage .hero-grid{width:100%;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,4.5vw,64px);align-items:stretch;flex:1}
.wp-block-cogestim-hero-courtage .hero-left{display:flex;flex-direction:column;gap:48px;min-width:0;position:relative}
.wp-block-cogestim-hero-courtage .hero-type{display:flex;flex-direction:column;align-items:flex-start}
.wp-block-cogestim-hero-courtage .hero-type .lab{color:var(--cog-on-dark-a90)}
.wp-block-cogestim-hero-courtage .hero-type h1{
	font-family:var(--sans);font-weight:300;font-size:clamp(52px,5.5vw,76px);line-height:1.04;letter-spacing:-.012em;
	color:var(--cog-white);margin:12px 0 0;max-width:20ch;text-wrap:balance;text-shadow:0 1px 3px rgba(0,0,0,.4),0 2px 26px rgba(0,0,0,.3);
}
.wp-block-cogestim-hero-courtage .hero-type h1 .em{color:var(--cog-white)}
.wp-block-cogestim-hero-courtage .hero-type .sub{margin-top:18px;font-family:var(--sans);font-weight:400;font-size:clamp(15px,1.2vw,17px);line-height:1.5;color:rgba(255,255,255,.86);max-width:48ch;text-shadow:0 1px 3px rgba(0,0,0,.35)}
/* .hero-acts — 2 CTA optionnels sous le H1 (correctif conformité 26/08, porté
   verbatim depuis design/pages/Agence-Lausanne.html:34). Vide sur toutes les
   pages existantes = jamais rendu = zéro-diff. */
.wp-block-cogestim-hero-courtage .hero-acts{display:flex;align-items:center;gap:34px;flex-wrap:wrap}
/* 16/10 — l'air titre/accroche → CTA ne dépend plus d'un élément optionnel. Constat au computed : .hero-acts n'avait AUCUNE
   marge (maquette Agence-Lausanne.html:34 non plus) ; l'écart des pages avec accroche venait de la marge basse par défaut
   du <p class="sub"> (1em = clamp(15px,1.2vw,17px), non déclarée), donc 0 px sur une agence sans accroche (Morat). Les acts
   portent désormais l'air (même valeur que l'ancien 1em) et l'accroche la lui cède : UN seul porteur, zéro-diff avec accroche.
   Limité à .hero--sans-formulaire : avec formulaire, l'espacement vient du gap 48px de .hero-left, inchangé. */
.wp-block-cogestim-hero-courtage.hero--sans-formulaire .hero-acts{margin-top:clamp(15px,1.2vw,17px)}
.wp-block-cogestim-hero-courtage.hero--sans-formulaire .hero-type:has(+ .hero-acts) .sub{margin-bottom:0}
.wp-block-cogestim-hero-courtage .hero-chips{display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:var(--cog-fs-xs);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.8);white-space:nowrap;flex-wrap:nowrap;margin-top:auto}
.wp-block-cogestim-hero-courtage .hero-chips .dot{width:4px;height:4px;background:var(--red);border-radius:var(--radius-full);display:inline-block;flex:0 0 auto}

.wp-block-cogestim-hero-courtage .hero-form-col{display:flex;flex-direction:column;width:500px;max-width:100%}
.wp-block-cogestim-hero-courtage .hfc-card{border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:var(--radius-sm);padding:40px 34px;display:flex;flex-direction:column;gap:34px;box-shadow:0 28px 72px rgba(8,6,10,.4)}
.wp-block-cogestim-hero-courtage .hfc-card .hfc-title{color:var(--ink)}
.wp-block-cogestim-hero-courtage .hfc-card .field-in{color:var(--ink)}
.wp-block-cogestim-hero-courtage .hfc-title{margin:0}
/* Sous-grille de rangée : les paires label/input/msg d'une même rangée
   partagent les mêmes pistes de ligne, ce qui garde les champs alignés même
   si un label wrap sur 2 lignes (ex. « NPA ou commune du bien* »). Ne
   restyle pas .field--boxed (LIBRARY) — n'ajuste que son placement dans ce
   conteneur (arbitrage 04/08). */
.wp-block-cogestim-hero-courtage .hfc-fields{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,auto);row-gap:var(--space-6);column-gap:28px}
.wp-block-cogestim-hero-courtage .hfc-fields .field--boxed{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:var(--space-3)}
.wp-block-cogestim-hero-courtage .hfc-foot{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-6)}
.wp-block-cogestim-hero-courtage .hfc-foot .consent{margin:0;max-width:52ch}
.wp-block-cogestim-hero-courtage .hfc-act{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.wp-block-cogestim-hero-courtage .hfc-reassure{font-family:var(--sans);font-size:var(--cog-fs-legal);color:var(--ink-mute)}

@media (max-width:1100px){
	/* M1-bis 15/10 : .hero-form-col{width:500px} imposait 500 px à la piste « 1fr » (contribution intrinsèque) — minmax(0,1fr) la borne au conteneur. */
	.wp-block-cogestim-hero-courtage .hero-grid{grid-template-columns:minmax(0,1fr);gap:32px}
}
@media (max-width:560px){
	/* M1 14/10 : puces du hero sur plusieurs lignes au lieu d'une ligne nowrap clippée par le hero (overflow:hidden). */
	.wp-block-cogestim-hero-courtage .hero-chips{flex-wrap:wrap;white-space:normal;row-gap:8px}
	.wp-block-cogestim-hero-courtage .hfc-fields{grid-template-columns:1fr;grid-template-rows:none}
	.wp-block-cogestim-hero-courtage .hfc-fields .field--boxed{display:flex;flex-direction:column;grid-row:auto}
}

/* .hero--editorial — hero réduit, tranché session 31/08 (§2.8, planche
   « Hero réduit — Hauteurs et règle »). Redéclarée ici (identique à
   cogestim-components.css) pour primer sur .wp-block-cogestim-hero-courtage.hero
   ci-dessus (3 classes vs 2 : gagne quel que soit l'ordre de chargement). */
.wp-block-cogestim-hero-courtage.hero.hero--editorial{min-height:var(--cog-hero-h-editorial);padding-bottom:clamp(48px,5vw,72px)}
/* Succès (lot routing 2/7) : motif .msg-done des blocs cta-*, absent de la maquette du hero. */
.wp-block-cogestim-hero-courtage .msg-done{display:none;align-items:center;gap:12px;font-family:var(--sans);font-weight:var(--fw-medium);font-size:var(--cog-fs-body);color:var(--ink)}
.wp-block-cogestim-hero-courtage .msg-done svg{width:var(--icon-lg);height:var(--icon-lg);stroke:var(--icon-accent);fill:none;stroke-width:var(--icon-stroke);stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.wp-block-cogestim-hero-courtage .hfc-form.sent .hfc-title,.wp-block-cogestim-hero-courtage .hfc-form.sent .hfc-fields,.wp-block-cogestim-hero-courtage .hfc-form.sent .hfc-foot{display:none}
.wp-block-cogestim-hero-courtage .hfc-form.sent .msg-done{display:flex}
/* Lien politique de confidentialité près du CTA (registre formulaires 02/10) : rendu hors de la case, texte de consentement sans lien. */
.wp-block-cogestim-hero-courtage .form-privacy{margin:0;font-family:var(--sans);font-size:var(--cog-fs-legal);color:var(--ink-soft)}
.wp-block-cogestim-hero-courtage .form-privacy a{text-decoration:underline;text-underline-offset:2px}
/* Astérisque de la case requise + optin marketing optionnelle (avenant registre formulaires 02/10). */
.wp-block-cogestim-hero-courtage .consent label i{font-style:normal;color:var(--color-error)}
.wp-block-cogestim-hero-courtage .consent .optin-sub{display:block;margin-top:4px;font-size:12px;color:var(--ink-mute)}
