/* ============================================================
   Tiré à Part — Business : correctifs WordPress.
   Chargé APRÈS proto.css. Depuis le réalignement « Business Premium », proto.css + assets/ds/
   portent les polices de marque (Hanken/Bodoni/DM Mono), les tokens --tap-*, le bordeaux et le
   menu sticky. Il ne reste ici que les correctifs propres à WordPress.
   ============================================================ */

/* #53 — WordPress ajoute la classe « page » au <body> pour les Pages, ce qui entre en collision
   avec la feuille .page de proto.css (max-width, marges, bordure). On neutralise sur <body> et on
   restaure le fond pleine largeur à bandes verticales. */
body.page {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  box-shadow: none;
  background:
    repeating-linear-gradient(90deg, rgba(96, 78, 52, 0.10) 0 92px, rgba(96, 78, 52, 0) 92px 184px),
    var(--cream);
}

/* #55 — garde le menu sticky sous l'admin bar WordPress quand un utilisateur est connecté. */
.admin-bar .topbar { top: 32px; }
@media (max-width: 782px) { .admin-bar .topbar { top: 46px; } }

/* Menu sticky : le proto met overflow-x:hidden sur <html>/<body>, ce qui promeut l'axe vertical
   en conteneur de défilement et casse position:sticky (le menu défilait avec la page). overflow-x:
   clip masque le même débordement horizontal SANS créer de conteneur de défilement → le menu colle
   bien au haut du viewport. */
html, body { overflow-x: clip; }

/* Sommaire : pas d'ombre portée sur la carte « Notre maison ». */
.toc-cta { box-shadow: none; }

/* Multiplicateur grande résolution — agrandit toute l'UI sur les grands écrans pour que la
   feuille centrée (max 1280) ne paraisse pas perdue. Full HD/1080p+ → 110% ; 4K+ → 125%.
   `zoom` met à l'échelle px compris (le design est en px), sans débordement horizontal. */
@media (min-width: 1920px) { html { zoom: 1.10; } }
@media (min-width: 3840px) { html { zoom: 1.25; } }

/* #59 — footer réduit à 3 colonnes (marque + Questions + Mentions) après retrait temporaire de la
   section « À découvrir » et du sélecteur de langues (DE/EN + pages réserve pas encore actifs). */
.foot { grid-template-columns: 1.4fr 1fr 1fr; }

/* ---- Fluent Forms : couleurs de marque + alignement (tokens --tap-*). ---- */

/* Boutons d'envoi au bordeaux validé (= accent brand book #8F3D26). Le styler FF code la couleur
   en dur (#1A1A1A) via `form.fluent_form_N .wpf_has_custom_css.ff-btn-submit` (spécificité 0,3,1) :
   on le surclasse avec une spécificité supérieure (0,3,2), sans !important. Newsletter (2) + contact (1). */
form.frm-fluent-form button.wpf_has_custom_css.ff-btn-submit {
  background: var(--tap-accent);
  border-color: var(--tap-accent);
  color: var(--tap-paper);
}
form.frm-fluent-form button.wpf_has_custom_css.ff-btn-submit:hover,
form.frm-fluent-form button.wpf_has_custom_css.ff-btn-submit:focus {
  background: var(--tap-accent-mid);
  border-color: var(--tap-accent-mid);
}

/* Newsletter (id 2) : champ e-mail + bouton sur une ligne, sans espace résiduel ni double bordure
   (#65). On annule les marges/paddings que Fluent Forms ajoute autour du champ (sinon la bordure
   noire du .news form déborde sous la ligne), on retire la bordure propre du champ (seule celle du
   .news form reste), et on cale champ + bouton à 48px (stretch). */
.fluent_form_2 fieldset,
.fluent_form_2 .ff-t-cell,
.fluent_form_2 .ff-el-input--content { margin: 0; padding: 0; }
/* FF impose margin-bottom:20px sur .ff-el-group via son CSS externe en !important → seul un
   !important ciblé peut le surclasser (cas standard d'override d'un plugin). */
form.frm-fluent-form.fluent_form_2 .ff-el-group { margin: 0 !important; padding: 0; }
.fluent_form_2 .ff-t-container { align-items: stretch; margin: 0; }
.fluent_form_2 input[type="email"] { border: 0; height: 48px; box-sizing: border-box; }
/* FF impose aussi margin-bottom:20px sur le bouton (c'est lui qui creusait l'espace résiduel
   sous la ligne) → même !important ciblé. */
form.frm-fluent-form.fluent_form_2 .ff-btn-submit { height: 48px; box-sizing: border-box; margin: 0 !important; }

/* #70 — formulaire de contact (FF id 1) : restaurer la ligne graphique brand book que le passage en
   Fluent Forms avait fait perdre (les classes FF ne reçoivent ni .field ni .btn du proto, d'où des
   champs en police système, bordure grise FF et un « ENVOYER » sans obèle). On réaligne champs +
   libellés sur le design proto .field, et on ajoute l'obèle † sur ENVOYER comme « † M'INSCRIRE ». */
form.frm-fluent-form.fluent_form_1 .ff-el-input--label label {
  font-family: var(--f-mono); font-size: 10px; letter-spacing: .2em;
  text-transform: uppercase; color: var(--muted); font-weight: 500;
}
form.frm-fluent-form.fluent_form_1 input:not([type="submit"]),
form.frm-fluent-form.fluent_form_1 textarea,
form.frm-fluent-form.fluent_form_1 select {
  border: 1.5px solid var(--line); background: rgba(255, 255, 255, 0.3);
  padding: 13px 14px; font-family: var(--f-disp); font-size: 15px;
  color: var(--ink); border-radius: 0;
}
form.frm-fluent-form.fluent_form_1 input:not([type="submit"]):focus,
form.frm-fluent-form.fluent_form_1 textarea:focus,
form.frm-fluent-form.fluent_form_1 select:focus { border-color: var(--ink); }
.fluent_form_1 .ff-btn-submit::before {
  content: "† "; font-family: var(--f-acc); font-style: italic; font-weight: 400; letter-spacing: 0;
}

/* Pages légales rendues depuis les .md : niveau « article » (###→h4) sous les sections (##→h3). */
.prose h4 { font-weight: 700; font-size: 18px; letter-spacing: -0.01em; margin: 20px 0 8px; }
