/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/
Description: Thème enfant de Hello Elementor pour le site Nimea. Fondation de design (typographie Urbanist) reprise de l'ancien thème Horizon pour rendre le site autonome, léger et indépendant du thème.
Author: Nimea
Template: hello-elementor
Version: 1.11.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

/* =========================================================================
   FONDATION TYPOGRAPHIQUE — reprise fidèle de la prod (Horizon)
   Ne cible QUE les titres "bruts" (:not(.elementor-heading-title)) :
   les titres construits dans les widgets Elementor gardent leurs réglages.
   Police : Urbanist (déjà chargée par le Kit Elementor).
   ========================================================================= */

/* --- Desktop (défaut) --- */
h1:not(.elementor-heading-title),
h2:not(.elementor-heading-title),
h3:not(.elementor-heading-title),
h4:not(.elementor-heading-title),
h5:not(.elementor-heading-title),
h6:not(.elementor-heading-title) {
	font-family: "Urbanist", sans-serif;
	font-style: normal;
}

h1:not(.elementor-heading-title) { font-size: 60px; line-height: 1.1;  font-weight: 500; }
h2:not(.elementor-heading-title) { font-size: 40px; line-height: 1.35; font-weight: 500; }
h3:not(.elementor-heading-title) { font-size: 32px; line-height: 1.25; font-weight: 400; }
h4:not(.elementor-heading-title) { font-size: 24px; line-height: 1.3;  font-weight: 500; }
h5:not(.elementor-heading-title) { font-size: 20px; line-height: 1.3;  font-weight: 500; }
h6:not(.elementor-heading-title) {
	font-size: 12px; line-height: 1.3; font-weight: 500;
	text-transform: uppercase;
}

/* --- Tablette (≤ 1024px) --- */
@media (max-width: 1024px) {
	h1:not(.elementor-heading-title) { font-size: 34px; }
	h2:not(.elementor-heading-title) { font-size: 29px; }
	h3:not(.elementor-heading-title) { font-size: 24px; }
	h4:not(.elementor-heading-title) { font-size: 20px; }
	h5:not(.elementor-heading-title) { font-size: 20px; }
}

/* --- Mobile (≤ 767px) --- */
@media (max-width: 767px) {
	h1:not(.elementor-heading-title) { font-size: 26px; }
	h2:not(.elementor-heading-title) { font-size: 23px; }
	h3:not(.elementor-heading-title) { font-size: 21px; }
	h4:not(.elementor-heading-title) { font-size: 19px; }
	h5:not(.elementor-heading-title) { font-size: 18px; }
}

/* --- Corps de texte : 17px comme la prod (le Kit fournit la police Comfortaa) --- */
body {
	font-size: 17px;
	line-height: 1.647;
}

/* =========================================================================
   ANIMATIONS D'ENTRÉE DU THÈME HORIZON — neutralisation (site-wide)
   L'ancien thème animait des conteneurs (`horizon-fadeinup`, etc.). Elementor
   les met en `.elementor-invisible { visibility:hidden }` jusqu'au déclenchement
   de l'animation ; sous Hello ces animations n'existent plus, donc les éléments
   (titres, sections) restaient INVISIBLES en permanence. On force leur affichage.
   ========================================================================= */
.elementor-invisible {
	visibility: visible !important;
	animation: none !important;
	opacity: 1 !important;
}

/* =========================================================================
   HEADER — correctifs migration (fidèle à la prod)
   ========================================================================= */

/* Masquer le titre de page généré par Hello Elementor (par défaut, ex. accueil) */
.page-header { display: none !important; }

/* --- HÉROS titre de page (pages internes) -------------------------------
   Sur prod, l'en-tête Horizon affichait le titre de page en héros via un
   widget ThemeREX (`trx_sc_layouts_title`) mort sous Hello ; il ne restait
   que la vague décorative flottante (bande `26add94`), au-dessus du titre.
   On masque cette bande orpheline et on reconstruit le héros à partir du
   `.page-header` (titre dynamique) : titre centré + vague verte en dessous.
   L'accueil (`body.home`) est exclu — il a son propre héros de contenu. */
.elementor-location-header .elementor-element-26add94 { display: none !important; }

body:not(.home) .page-header {
	display: block !important;
	text-align: center !important;
	background-color: color(srgb 0.9596 0.9448 0.9188) !important;
	padding: 80px 20px 34px;
	margin: 0;
}
body:not(.home) .page-header .entry-title {
	font-family: "Urbanist", sans-serif;
	font-weight: 400 !important;
	font-size: 56px;
	line-height: 1.12;
	color: #262320;
	margin: 0 auto;
	text-align: center !important;
}
body:not(.home) .page-header::after {
	content: ""; display: block; width: 58px; height: 26px; margin: 20px auto 0;
	background: url("/wp-content/uploads/2024/09/cropped-nimea-vert.png.webp") no-repeat center;
	background-size: contain;
}
@media (max-width: 1024px) {
	body:not(.home) .page-header .entry-title { font-size: 40px; }
	body:not(.home) .page-header { padding: 60px 20px 28px; }
}
@media (max-width: 767px) {
	body:not(.home) .page-header .entry-title { font-size: 28px; }
	body:not(.home) .page-header { padding: 40px 20px 22px; }
}

/* Garder le header Elementor au-dessus du contenu (hero) */
.elementor-location-header { position: relative; z-index: 999; }
.elementor-location-header > .e-con { z-index: 999 !important; }

/* Masquer le logo mobile 260px (f4a66ab) — non utilisé (mobile = logo_noir via CSS) */
.elementor-element-f4a66ab { display: none !important; }

/* Neutraliser les résidus à fond blanc dans le header (petit carré en haut à gauche) */
.elementor-element-3696fc8 { display: none !important; }
.elementor-location-header .elementor-element-e412ae0 { background: transparent !important; }

/* =========================================================================
   FOOTER — correctifs migration (fidèle à la prod)
   ========================================================================= */

/* Fond sombre du footer (venait d'une variable du thème, absente sous Hello) */
.elementor-location-footer > .e-con,
.elementor-location-footer .e-con.e-parent { background-color: #1A1A1A !important; }

/* Espacement vertical du footer (padding perdu avec le thème) */
.elementor-location-footer > .e-con { padding-top: 55px; padding-bottom: 40px; }

/* Couleurs : texte courant gris clair, titres/liens blancs */
.elementor-location-footer { color: #929598; }
.elementor-location-footer h1, .elementor-location-footer h2, .elementor-location-footer h3,
.elementor-location-footer h4, .elementor-location-footer h5, .elementor-location-footer h6,
.elementor-location-footer a { color: #ffffff; }

/* Logo Niméa dans le footer, dans son conteneur d'origine (le widget logo
   ThemeREX ne s'affiche pas sous Hello ; fdf9441 est le conteneur vide qui le portait) */
.elementor-location-footer .elementor-element-fdf9441::before {
  content: ""; display: block; width: 109px; height: 70px;
  background: url("/wp-content/uploads/2022/11/Fichier-1.png") no-repeat left center;
  background-size: contain;
}

/* =========================================================================
   RESPONSIVE — mobile / tablette (fidèle à la prod)
   ========================================================================= */

/* --- Corps de texte + gutter contenu sur mobile --- */
@media (max-width: 767px){
  body { font-size: 16px; }
  /* Gutter latéral 40px (comme la prod) sans créer de scroll horizontal */
  .e-con-inner { max-width: calc(100% - 80px) !important; margin-left: auto !important; margin-right: auto !important; }
}

/* --- Header mobile/tablette (page d'accueil, header transparent 717054b) ---
   La prod a un header mobile séparé (blanc, logo foncé, burger) via des composants
   ThemeREX cassés sous Hello. On restyle donc le header principal en version mobile :
   fond blanc, logo foncé (logo_noir-1), burger à droite, bouton masqué, sticky. */
@media (max-width: 1024px){
  body { padding-top: 72px; }

  .elementor-location-header .elementor-element-717054b {
    position: fixed !important; top: 0 !important; left: 0 !important;
    width: 100% !important; z-index: 9999 !important;
    background-color: #ffffff !important;
    flex-direction: row !important; flex-wrap: nowrap !important;
    justify-content: space-between !important; align-items: center !important;
    padding: 14px 24px !important;
  }

  /* Logo foncé (remplace les logos img par le fichier prod logo_noir-1) */
  .elementor-location-header .elementor-element-a02f1fb .elementor-widget-image img { display: none !important; }
  .elementor-location-header .elementor-element-a02f1fb {
    flex-grow: 0 !important;
    background: url("/wp-content/uploads/2024/09/logo_noir-1.webp") no-repeat left center !important;
    background-size: contain !important;
    width: 150px !important; min-width: 150px !important; height: 44px !important;
  }

  /* Burger collé à droite */
  .elementor-location-header .elementor-element-987923a { margin-left: auto !important; flex-grow: 0 !important; width: auto !important; }
  .elementor-location-header .elementor-element-987923a .e-n-menu,
  .elementor-location-header .elementor-element-e3baa60,
  .elementor-location-header .elementor-element-e3baa60 .e-n-menu { margin-left: auto !important; justify-content: flex-end !important; align-items: center !important; width: auto !important; }
  .elementor-location-header .e-n-menu-toggle { margin-left: auto !important; }

  /* Masquer le bouton « Nous contacter » (absent du header mobile prod) */
  .elementor-location-header .elementor-element-a37a233,
  .elementor-location-header .elementor-element-dbf519c { display: none !important; }

  /* Menu / burger foncés (lisibles sur fond blanc) */
  .elementor-location-header .e-n-menu-title-text,
  .elementor-location-header a.elementor-item,
  .elementor-location-header .elementor-item { color: #1A1A1A !important; }
  .elementor-location-header .elementor-menu-toggle,
  .elementor-location-header .elementor-menu-toggle i,
  .elementor-location-header .e-n-menu-toggle,
  .elementor-location-header .e-n-menu-toggle-icon { color: #1A1A1A !important; fill: #1A1A1A !important; }
}

/* =========================================================================
   Vos personnalisations CSS supplémentaires ci-dessous
   ========================================================================= */
