.elementor-kit-5{--e-global-color-primary:#16335F;--e-global-color-secondary:#1A78B8;--e-global-color-text:#16335F;--e-global-color-accent:#F2A65A;--e-global-color-hlien1:#155F93;--e-global-color-hbrume:#8FD3E8;--e-global-color-hciel1:#EAF4FA;--e-global-color-hnuage:#F7FAFC;--e-global-color-hsable:#F5EEE4;--e-global-color-hardoi:#4A6282;--e-global-color-hligne:#D7E3EE;--e-global-color-hnuit1:#0F2444;--e-global-color-hblanc:#FFFFFF;--e-global-color-habsur:#E8913F;--e-global-color-hbordc:#6F86A3;--e-global-color-herreu:#B3261E;--e-global-color-hsucce:#2F7D5C;--e-global-typography-primary-font-family:"Lexend";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Lexend";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Lexend";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Lexend";--e-global-typography-accent-font-weight:600;--e-global-typography-hchapo-font-family:"Lexend";--e-global-typography-hchapo-font-size:21px;--e-global-typography-hchapo-font-weight:300;--e-global-typography-hchapo-line-height:34px;--e-global-typography-hsurti-font-family:"Lexend";--e-global-typography-hsurti-font-size:13px;--e-global-typography-hsurti-font-weight:500;--e-global-typography-hsurti-text-transform:uppercase;--e-global-typography-hsurti-line-height:16px;--e-global-typography-hsurti-letter-spacing:1.56px;--e-global-typography-hchiff-font-family:"Lexend";--e-global-typography-hchiff-font-size:40px;--e-global-typography-hchiff-font-weight:600;--e-global-typography-hchiff-line-height:44px;background-color:#F7FAFC;color:#16335F;font-family:"Lexend", Sans-serif;font-size:18px;font-weight:400;line-height:30px;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:#F2A65A;font-family:"Lexend", Sans-serif;font-size:16px;font-weight:600;line-height:20px;color:#16335F;border-radius:999px 999px 999px 999px;padding:14px 28px 14px 28px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:#E8913F;color:#16335F;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:#155F93;}.elementor-kit-5 a:hover{color:#16335F;}.elementor-kit-5 h1{color:#16335F;font-family:"Lexend", Sans-serif;font-size:52px;font-weight:600;line-height:60px;}.elementor-kit-5 h2{color:#16335F;font-family:"Lexend", Sans-serif;font-size:38px;font-weight:600;line-height:46px;}.elementor-kit-5 h3{color:#16335F;font-family:"Lexend", Sans-serif;font-size:26px;font-weight:500;line-height:34px;}.elementor-kit-5 h4{color:#16335F;font-family:"Lexend", Sans-serif;font-size:20px;font-weight:500;line-height:28px;}.elementor-kit-5 h5{color:#16335F;font-family:"Lexend", Sans-serif;font-size:18px;font-weight:500;line-height:26px;}.elementor-kit-5 h6{color:#16335F;font-family:"Lexend", Sans-serif;font-size:16px;font-weight:500;line-height:24px;}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{color:#16335F;background-color:#FFFFFF;border-radius:8px 8px 8px 8px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-hchapo-font-size:18px;--e-global-typography-hchapo-line-height:30px;font-size:17px;line-height:28px;}.elementor-kit-5 h1{font-size:36px;line-height:44px;}.elementor-kit-5 h2{font-size:28px;line-height:36px;}.elementor-kit-5 h3{font-size:22px;line-height:30px;}.elementor-kit-5 h4{font-size:19px;line-height:27px;}.elementor-kit-5 h5{font-size:17px;line-height:24px;}.elementor-kit-5 h6{font-size:16px;line-height:24px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Hypnotis’Air — composants de la charte (classes ha-). Source : charte graphique. */
:root {
  --bleu-profond: #16335F; --bleu-nuit: #0F2444; --bleu-air: #1A78B8; --bleu-lien: #155F93;
  --bleu-brume: #8FD3E8; --ciel: #EAF4FA; --nuage: #F7FAFC; --blanc: #FFFFFF; --sable: #F5EEE4;
  --abricot: #F2A65A; --abricot-survol: #E8913F; --ardoise: #4A6282; --ligne: #D7E3EE;
  --bordure-champ: #6F86A3; --succes: #2F7D5C; --erreur: #B3261E;
  --ha-font: Lexend, "Atkinson Hyperlegible", system-ui, sans-serif;
  --ha-rayon-sm: 8px; --ha-rayon-md: 16px; --ha-rayon-lg: 28px;
  --ha-ombre-carte: 0 1px 2px rgba(22,51,95,.06), 0 8px 24px rgba(22,51,95,.07);
  --ha-ombre-survol: 0 2px 4px rgba(22,51,95,.08), 0 16px 36px rgba(22,51,95,.13);
}
.ha, .ha * { box-sizing: border-box; }
.ha { font-family: var(--ha-font); color: var(--bleu-profond); font-size: 18px; line-height: 1.65; }
.ha :focus-visible, .ha-btn:focus-visible, .ha-faq summary:focus-visible, .ha-champ input:focus-visible, .ha-champ textarea:focus-visible {
  outline: 3px solid var(--bleu-air); outline-offset: 2px; box-shadow: 0 0 0 2px var(--blanc);
}
.ha-sombre :focus-visible { outline-color: var(--bleu-brume); box-shadow: none; }
.ha-surtitre { font: 500 13px/16px var(--ha-font); letter-spacing: .12em; text-transform: uppercase; color: var(--bleu-lien); margin: 0 0 12px; }
.ha-sombre .ha-surtitre { color: var(--bleu-brume); }
.ha-lien { color: var(--bleu-lien); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.ha-lien:hover { text-decoration-thickness: 2px; }
.ha-photo-arche { border-radius: 999px 999px var(--ha-rayon-lg) var(--ha-rayon-lg); object-fit: cover; display: block; }
.ha-icone { width: 48px; height: 48px; border-radius: 50%; background: var(--ciel); color: var(--bleu-air); display: inline-flex; align-items: center; justify-content: center; flex: none; }
.ha-icone svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.ha-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 14px 28px;
  border-radius: 999px; border: 2px solid transparent; font: 600 16px/20px var(--ha-font); text-decoration: none; cursor: pointer;
  transition: background-color .2s ease-out, color .2s ease-out, border-color .2s ease-out; }
.ha-btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ha-btn--primaire { background: var(--abricot); color: var(--bleu-profond); }
.ha-btn--primaire:hover { background: var(--abricot-survol); }
.ha-btn--secondaire { background: transparent; color: var(--bleu-lien); border-color: var(--bleu-lien); }
.ha-btn--secondaire:hover { background: var(--ciel); }
.ha-btn--clair { background: transparent; color: var(--blanc); border-color: rgba(255,255,255,.7); }
.ha-btn--clair:hover { background: rgba(255,255,255,.1); border-color: var(--blanc); }
.ha-btn--petit { min-height: 40px; padding: 9px 20px; font-size: 15px; }
.ha-badge { display: inline-flex; align-items: center; gap: 6px; padding: 5px 14px; border-radius: 999px; background: var(--ciel);
  color: var(--bleu-lien); font: 500 14px/20px var(--ha-font); }
.ha-badge svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ha-badge--tnd { background: var(--bleu-profond); color: var(--bleu-brume); }
.ha-badge--sable { background: var(--sable); color: var(--bleu-profond); }
.ha-entete { display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 80px; padding: 0 32px; background: var(--blanc); box-shadow: 0 1px 0 rgba(22,51,95,.08); }
.ha-entete__logo img { height: 44px; width: auto; display: block; }
.ha-entete__nav { display: flex; align-items: center; gap: 28px; }
.ha-entete__nav a { font: 500 16px/24px var(--ha-font); color: var(--bleu-profond); text-decoration: none; padding: 12px 0; border-bottom: 2px solid transparent; }
.ha-entete__nav a:hover, .ha-entete__nav a[aria-current] { border-bottom-color: var(--bleu-air); }
.ha-entete__actions { display: flex; align-items: center; gap: 16px; }
.ha-entete__tel { font: 500 15px/20px var(--ha-font); color: var(--bleu-lien); text-decoration: none; white-space: nowrap; }
@media (max-width: 1024px) { .ha-entete__nav, .ha-entete__tel { display: none; } .ha-entete { height: 64px; padding: 0 16px; } .ha-entete__logo img { height: 36px; } }
.ha-carte-motif { display: flex; flex-direction: column; gap: 12px; padding: 24px; background: var(--blanc); border: 1px solid var(--ligne);
  border-radius: var(--ha-rayon-md); box-shadow: var(--ha-ombre-carte); text-decoration: none; color: var(--bleu-profond);
  transition: box-shadow .2s ease-out, transform .2s ease-out; }
a.ha-carte-motif:hover { box-shadow: var(--ha-ombre-survol); transform: translateY(-2px); }
.ha-carte-motif__titre { font: 500 20px/28px var(--ha-font); margin: 4px 0 0; }
.ha-carte-motif__texte { font: 400 16px/26px var(--ha-font); color: var(--ardoise); margin: 0; }
.ha-carte-motif__lien { margin-top: auto; display: inline-flex; align-items: center; gap: 6px; font: 600 15px/20px var(--ha-font); color: var(--bleu-lien); }
.ha-carte-motif__lien svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ha-carte-seance { display: flex; flex-direction: column; gap: 16px; padding: 32px; background: var(--blanc); border: 1px solid var(--ligne); border-radius: var(--ha-rayon-md); box-shadow: var(--ha-ombre-carte); }
.ha-carte-seance--vedette { border: 2px solid var(--bleu-air); }
.ha-carte-seance__titre { font: 500 26px/34px var(--ha-font); margin: 0; }
.ha-carte-seance__prix { display: flex; align-items: baseline; gap: 10px; }
.ha-carte-seance__montant { font: 600 40px/44px var(--ha-font); color: var(--bleu-profond); }
.ha-carte-seance__duree { font: 400 16px/24px var(--ha-font); color: var(--ardoise); }
.ha-carte-seance__texte { font: 400 16px/26px var(--ha-font); color: var(--ardoise); margin: 0; }
.ha-carte-seance__liste { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.ha-carte-seance__liste li { display: flex; gap: 10px; font: 400 16px/24px var(--ha-font); }
.ha-carte-seance__liste svg { width: 20px; height: 20px; flex: none; margin-top: 2px; fill: none; stroke: var(--bleu-air); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ha-carte-seance .ha-btn { margin-top: auto; }
.ha-etapes { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 32px; counter-reset: etape; }
.ha-etapes li { counter-increment: etape; display: grid; gap: 10px; align-content: start; }
.ha-etapes li::before { content: counter(etape); width: 48px; height: 48px; border-radius: 50%; border: 2px solid var(--bleu-air); color: var(--bleu-air);
  display: flex; align-items: center; justify-content: center; font: 600 20px/1 var(--ha-font); }
.ha-etapes h4 { font: 500 20px/28px var(--ha-font); margin: 6px 0 0; }
.ha-etapes p { font: 400 16px/26px var(--ha-font); color: var(--ardoise); margin: 0; }
@media (max-width: 767px) { .ha-etapes { grid-template-columns: 1fr; } }
.ha-reassurance { display: flex; flex-wrap: wrap; gap: 16px 48px; align-items: flex-start; }
.ha-reassurance__item { display: grid; gap: 2px; min-width: 150px; }
.ha-reassurance__chiffre { font: 600 40px/44px var(--ha-font); color: var(--bleu-air); letter-spacing: -.01em; }
.ha-reassurance__libelle { font: 400 15px/22px var(--ha-font); color: var(--ardoise); }
.ha-faq { display: grid; gap: 12px; }
.ha-faq details { background: var(--blanc); border: 1px solid var(--ligne); border-radius: var(--ha-rayon-md); }
.ha-faq summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px;
  padding: 20px 24px; font: 500 18px/26px var(--ha-font); color: var(--bleu-profond); border-radius: var(--ha-rayon-md); }
.ha-faq summary::-webkit-details-marker { display: none; }
.ha-faq summary::after { content: ""; flex: none; width: 12px; height: 12px; border-right: 2px solid var(--bleu-air); border-bottom: 2px solid var(--bleu-air);
  transform: rotate(45deg) translate(-3px,-3px); transition: transform .2s ease-out; }
.ha-faq details[open] summary::after { transform: rotate(225deg) translate(-3px,-3px); }
.ha-faq details > div { padding: 0 24px 22px; font: 400 17px/28px var(--ha-font); color: var(--ardoise); max-width: 68ch; }
.ha-cta { position: relative; overflow: hidden; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px 48px;
  padding: 56px; border-radius: var(--ha-rayon-lg); background: var(--bleu-profond); color: var(--blanc); }
.ha-cta__texte { position: relative; max-width: 560px; }
.ha-cta__titre { font: 600 34px/42px var(--ha-font); margin: 0 0 10px; color: var(--blanc); }
.ha-cta__texte p { font: 300 19px/30px var(--ha-font); margin: 0; color: var(--ciel); }
.ha-cta__actions { position: relative; display: flex; flex-wrap: wrap; gap: 12px; }
.ha-cta__ondes { position: absolute; right: -80px; bottom: -120px; width: 420px; height: 300px; pointer-events: none; }
.ha-cta__ondes ellipse { fill: none; stroke: var(--bleu-brume); stroke-width: 2; opacity: .35; }
@media (max-width: 767px) { .ha-cta { padding: 32px 24px; } .ha-cta__titre { font-size: 26px; line-height: 34px; } }
.ha-champ { display: grid; gap: 8px; max-width: 480px; }
.ha-champ label { font: 500 16px/22px var(--ha-font); color: var(--bleu-profond); }
.ha-champ input, .ha-champ textarea { font: 400 17px/24px var(--ha-font); color: var(--bleu-profond); background: var(--blanc);
  min-height: 48px; padding: 12px 16px; border: 1.5px solid var(--bordure-champ); border-radius: var(--ha-rayon-sm); }
.ha-champ__aide { font: 400 14px/20px var(--ha-font); color: var(--ardoise); }
.ha-champ--erreur input { border-color: var(--erreur); border-width: 2px; }
.ha-champ__erreur { display: flex; gap: 6px; align-items: flex-start; font: 500 14px/20px var(--ha-font); color: var(--erreur); }
.ha-champ__erreur svg { width: 18px; height: 18px; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
@media (prefers-reduced-motion: reduce) { .ha *, .ha-btn, .ha-carte-motif, .ha-faq summary::after { transition: none !important; transform: none !important; } }
/* Pages de texte (mentions légales, confidentialité…) : largeur de lecture confortable */
.page-template-default .site-main { padding-block: 56px 96px; }
.page-template-default .site-main .page-header,
.page-template-default .site-main .page-content { max-width: 760px; margin-inline: auto; }
.page-template-default .page-content h2 { margin-top: 48px; }
.page-template-default .page-content h3 { margin-top: 32px; }
.page-template-default .page-content li { margin-bottom: 6px; }

/* Badge reCAPTCHA masqué (mention affichée sous le formulaire, conformément aux règles de Google) */
.grecaptcha-badge { visibility: hidden !important; }

/* Bandeau d'appel à l'action : les boutons gardent leur largeur naturelle */
.ha-sombre > .e-con + .e-con:has(> .elementor-widget-button) { --width: auto; flex-shrink: 0; }
@media (max-width: 767px) { .ha-sombre > .e-con + .e-con:has(> .elementor-widget-button) { --width: 100%; } }
/* Fil d'Ariane */
.ha-fil-ariane a { color: #155F93; text-decoration: none; }
.ha-fil-ariane a:hover { text-decoration: underline; }

/* Articles de blog */
.ha-article h2 { font-size: 30px; line-height: 38px; font-weight: 600; color: #16335F; margin: 48px 0 16px; }
.ha-article h3 { font-size: 22px; line-height: 30px; font-weight: 500; color: #16335F; margin: 32px 0 12px; }
.ha-article p, .ha-article li { margin-bottom: 18px; }
.ha-article ul, .ha-article ol { padding-left: 24px; margin-bottom: 18px; }
.ha-article a { color: #155F93; text-decoration: underline; }
.ha-article strong { color: #16335F; font-weight: 500; }
.ha-article blockquote { margin: 32px 0; padding: 20px 24px; background: #EAF4FA; border-left: 4px solid #1A78B8; border-radius: 12px; color: #16335F; }
.ha-article img { border-radius: 16px; height: auto; }
@media (max-width: 767px) { .ha-article h2 { font-size: 24px; line-height: 32px; } }

.ha-article-image img { width: 100%; max-height: 460px; object-fit: cover; }/* End custom CSS */