/*
 * Styles portés depuis la maquette validée.
 *
 * FICHIER GÉNÉRÉ — ne pas modifier à la main.
 *   Source     : ~/Downloads/niort-tech-handoff/04_maquettes/v2/pistev2.html
 *   Régénérer  : node bin/port-mockup-css.mjs "~/Downloads/niort-tech-handoff/04_maquettes/v2/pistev2.html" sites/niort-tech/theme/anode-child/assets/css/maquette.css
 *
 * Le CSS d'origine est conservé tel quel : seuls les sélecteurs sont renommés
 * vers les classes BEM du site, et les variables de la maquette remplacées par
 * les tokens du design system. Aucune valeur n'est retouchée ici.
 *
 * Les écarts voulus — accessibilité, contenu dynamique — se posent dans
 * components.css, chargé après cette feuille.
 */

/* ------------------------------------------------------------------ */
/* Cohabitation avec Bricks                                            */
/* ------------------------------------------------------------------ */

/*
 * Bricks applique `display:flex ; flex-direction:column ; width:100%` à
 * .brxe-section et .brxe-block, en 0-1-0. Le CSS porté est écrit pour du HTML
 * nu : ces défauts le contredisent. On les remet à l'état neutre partout où
 * une classe du site prend le relais — c'est elle, ensuite, qui décide.
 *
 * `:where()` ne compte pas dans la spécificité : la règle vaut 0-1-0, celle de
 * l'attribut. Elle bat donc `.brxe-block` (0-1-0) par l'ordre du document, et
 * perd contre n'importe quelle règle de classe (0-2-0) — celles que Bricks émet
 * depuis les panneaux comme celles écrites ici.
 *
 * Sans le `:where()`, la règle vaudrait 0-2-0 et cette feuille arrivant après
 * le CSS de Bricks, le reset l'emporterait sur les styles posés dans les
 * panneaux : chaque `display` réglé depuis le builder resterait sans effet.
 */
:where(.brxe-section, .brxe-block, .brxe-div, .brxe-container)[class*="c-"],
:where(.brxe-section, .brxe-block, .brxe-div, .brxe-container)[class*="l-"] {
  display: block;
  flex-direction: initial;
  align-items: initial;
  justify-content: initial;
  width: auto;
}

/* reveal on scroll */

/* ============ BUTTONS ============ */

/* ============ HEADER (barre solide, logo lisible) ============ */

/* ============ HERO (style piste 2, plein cadre) ============ */
@keyframes heroZoom{to{transform:scale(1);}}
@keyframes rise{to{opacity:1;transform:translateY(0);}}

/* ============ CHIFFRES CLES (3) ============ */

/* ============ SECTION HEADS ============ */

/* ============ CARD GRID (image cards, ADN piste 8) ============ */
/* univers ACCOMPAGNEMENT — vert */

/* ============ BLOC ACCOMPAGNEMENT (univers vert distinct) ============ */

/* ============ LE LIEU (split éditorial, durable) ============ */

/* ============ EVENEMENTS ============ */

/* ============ ECOSYSTEME (carrousel) ============ */
@keyframes scroll{to{transform:translateX(-50%);}}

/* ============ CONTACT (formulaire maquette) ============ */
.c-form__grid.c-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.c-form__field.c-form__field{display:flex;flex-direction:column;gap:7px;}
.c-form__field.c-form__field.c-form__field--full{grid-column:1 / -1;}
.c-form__field.c-form__field label{font-weight:700;font-size:.86rem;color:var(--color-neutral-900);}
.c-form__field.c-form__field label .c-form__optional.c-form__optional{font-weight:500;color:var(--color-neutral-600);}
.c-form__field.c-form__field input:not([type=checkbox]):not([type=radio]),.c-form__field.c-form__field select,.c-form__field.c-form__field textarea{
  font-family:inherit;font-size:1rem;font-weight:500;color:var(--color-neutral-900);
  padding:13px 16px;border:1.5px solid rgba(36,26,20,.14);border-radius:12px;background:#fff;
  transition:border-color .2s,box-shadow .2s;width:100%;
}
.c-form__field.c-form__field textarea{resize:vertical;min-height:120px;}
.c-form__field.c-form__field input:not([type=checkbox]):not([type=radio]):focus,.c-form__field.c-form__field select:focus,.c-form__field.c-form__field textarea:focus{outline:none;border-color:var(--color-brand-500);box-shadow:0 0 0 3px rgba(188,82,22,.14);}
.c-form__field.c-form__field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M3 5l4 4 4-4' stroke='%235B5049' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:42px;cursor:pointer;}
.c-form__note.c-form__note{margin-top:14px;font-size:.86rem;color:var(--color-neutral-600);}

/* ============ FOOTER ============ */

/* ============ MOBILE NAV ============ */

/* ============ RESPONSIVE ============ */
@media(max-width:660px){
  .c-form__grid.c-form__grid{grid-template-columns:1fr;}
}
