/* =========================================
   AMA Energétique Chinoise — Style
   ========================================= */
@import url('fonts.css');

/* --- Variables couleurs (extraites du site Wix) --- */
:root {
  --teal-medium:  rgb(148, 214, 200);   /* #94D6C8 — header, about, footer */
  --teal-light:   rgb(207, 244, 236);   /* #CFF4EC — hero gauche, services droite */
  --teal-dark:    rgb(77,  115, 105);   /* #4D7369 — hero droite, bordures, logo */
  --green-light:  rgb(226, 246, 205);   /* #E2F6CD — bouton RDV, services gauche */
  --nav-bg:       rgb(231, 240, 255);   /* #E7F0FF — barre nav */
  --text-dark:    rgb(47,  47,  46);    /* #2F2F2E — texte principal */
  --text-mid:     rgb(93,  95,  98);    /* #5D5F62 — bordure bouton */
}

/* --- Apparition de page --- */
@keyframes pageIn {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: none; }
}

/* --- Reset — limité au header/footer pour ne pas interférer avec Elementor --- */
*, *::before, *::after { box-sizing: border-box; }
body {
  font-family: 'Nunito', sans-serif;
  font-weight: 300;
  color: var(--text-dark);
  margin: 0;
}
body > *:not(.site-header) {
  animation: pageIn 0.6s cubic-bezier(0.22, 0.61, 0.36, 1) both;
}

/* Reset ciblé : uniquement header et footer */
.site-header *, .site-footer * { margin: 0; padding: 0; }
.site-header a { text-decoration: none; color: inherit; }
.site-header ul { list-style: none; }
.site-footer a { text-decoration: none; color: inherit; }
.site-footer ul { list-style: none; }
.site-header img { display: block; max-width: 100%; }
.site-footer img { display: block; max-width: 100%; }

/* =========================================
   HEADER
   ========================================= */
.site-header {
  background-color: var(--teal-medium);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1000;
}

/* Compensation pour le header fixe */
body {
  padding-top: 142px;
}

/* Compensation barre admin WordPress (quand connecté) */
.admin-bar .site-header {
  top: 32px;
}
.admin-bar body {
  padding-top: 174px; /* 142px + 32px admin bar */
}

.header-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 18%;
  gap: 16px;
}

/* Logo */
.logo {
  display: flex;
  align-items: center;
  gap: 8px;
}

.logo-img {
  width: 55px;
  height: 55px;
  object-fit: contain;
}

.logo-text {
  font-family: 'amatic sc', cursive;
  font-size: 36px;
  font-weight: 700;
  color: var(--teal-dark);
  line-height: 1.1;
  text-transform: none;
  text-align: center;
}

/* Bouton rendez-vous */
.btn-rdv {
  font-family: 'Amatic SC', cursive;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
  color: var(--text-dark);
  background-color: var(--green-light);
  border: none;
  padding: 6px 12px;
  white-space: nowrap;
  transition: background 0.2s;
}
.btn-rdv:hover { background-color: rgb(210, 235, 185); }
.btn-rdv-short { display: none; }
.btn-rdv-long { display: inline; }

/* Hamburger button — caché sur desktop */
.hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 6px;
}
.hamburger span {
  display: block;
  width: 24px;
  height: 2px;
  background-color: var(--teal-dark);
  border-radius: 2px;
  transition: transform 0.3s, opacity 0.3s;
}
/* Animation croix */
.hamburger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.hamburger.is-open span:nth-child(2) { opacity: 0; }
.hamburger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Navigation */
.main-nav {
  background-color: var(--teal-medium) !important;
  border-top: none;
}

.main-nav ul {
  display: flex;
  justify-content: center;
  gap: 4px;
  max-width: 960px;
  margin: 0 auto;
}

.main-nav a {
  display: block;
  padding: 14px 12px;
  font-family: 'Amatic SC', cursive;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
  font-variant: normal;
  color: var(--teal-dark);
  transition: color 0.2s;
}
.main-nav a:hover,
.main-nav a.active,
.main-nav li.current-menu-item > a,
.main-nav li.current_page_item > a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* =========================================
   HERO
   ========================================= */
.hero {
  background-color: var(--teal-dark);
  display: flex;
  min-height: 480px;
}

.hero-left {
  flex: 0 0 45%;
  margin-left: 5%;
  background-color: var(--teal-light);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 70px 50px;
  text-align: center;
}

.hero-left h1 {
  font-family: 'libre baskerville', serif;
  font-style: normal;
  font-size: 47px;
  font-weight: 400;
  line-height: 1.2;
  color: var(--text-dark);
  margin-bottom: 32px;
}

.hero-subtitle {
  font-family: 'didot-w01-italic', serif;
  font-style: italic;
  font-size: 25px;
  color: var(--text-dark);
  letter-spacing: 0.02em;
  line-height: 1.4;
}

.hero-right {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
  background: linear-gradient(160deg, rgb(77, 115, 105) 0%, rgb(15, 25, 18) 100%);
}

.hero-right img {
  max-width: 360px;
  width: 100%;
}

/* =========================================
   À PROPOS
   ========================================= */
.about {
  background: linear-gradient(to right,
    var(--teal-dark) 5%,
    var(--teal-medium) 5%,
    var(--teal-medium) 95%,
    var(--teal-dark) 95%
  );
  padding: 80px 40px;
}

.about-inner {
  max-width: 520px;
  margin: 0 auto;
  text-align: center;
}

.about-inner h2 {
  font-family: 'libre baskerville', serif;
  font-size: 41px;
  font-weight: 400;
  font-variant: small-caps;
  letter-spacing: 0.06em;
  color: var(--text-dark);
  margin-bottom: 28px;
}

.about-text {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.6;
  color: var(--text-dark);
  margin-bottom: 36px;
}

.about-photo {
  width: 230px;
  height: 253px;
  object-fit: cover;
  margin: 0 auto 36px;
}

/* Bouton secondaire */
.btn-secondary {
  display: inline-block;
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-dark);
  background-color: transparent;
  border: 1.5px solid var(--text-dark);
  padding: 11px 28px;
  transition: background 0.2s, color 0.2s;
}
.btn-secondary:hover {
  background-color: var(--teal-dark);
  color: white;
  border-color: var(--teal-dark);
}

/* =========================================
   SERVICES
   ========================================= */
.services {
  background-color: var(--teal-dark);
  display: flex;
  min-height: 480px;
}

.service-card {
  flex: 1;
  padding: 70px 60px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 20px;
}

.service-card--left {
  background-color: var(--green-light);
  margin-left: 5%;
}

.service-card--right {
  background-color: var(--teal-light);
}

.service-label {
  font-family: 'didot-w01-italic', serif;
  font-style: italic;
  font-size: 22px;
  color: var(--text-dark);
}

.service-card h3 {
  font-family: 'libre baskerville', serif;
  font-size: 27px;
  font-weight: 400;
  color: var(--text-dark);
  line-height: 1.3;
}

.service-card p {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
  color: var(--text-dark);
  max-width: 420px;
}

/* Bouton outline */
.btn-outline {
  display: inline-block;
  margin-top: auto;
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-dark);
  background-color: transparent;
  border: 1.5px solid var(--teal-dark);
  padding: 10px 20px;
  transition: background 0.2s, color 0.2s;
}
.btn-outline:hover {
  background-color: var(--teal-dark);
  color: white;
}

/* =========================================
   FOOTER
   ========================================= */
.site-footer {
  background-color: var(--teal-medium);
  padding: 28px 40px;
}

.footer-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.social-links {
  display: flex;
  gap: 12px;
}

.social-links img {
  width: 36px;
  height: 36px;
}

.footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px 24px;
}

.footer-links a {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 13px;
  color: var(--text-dark);
  transition: text-decoration 0.2s;
}
.footer-links a:hover { text-decoration: underline; }

.footer-copy {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 13px;
  color: var(--text-dark);
}
.footer-copy a { text-decoration: underline; }

/* =========================================
   PAGES INTÉRIEURES
   ========================================= */

/* Fond teal-light sur toutes les pages intérieures */
.page-template-page-a-propos,
.page-template-page-energetique-chinoise,
.page-template-page-psychobiologie,
.page-template-page-art-et-artisanat,
.page-template-page-tarifs,
.page-template-page-infos-pratiques,
.page-template-page-massage-tui-na,
.page-template-page-acupuncture,
.page-template-page-ventouses {
  background-color: var(--teal-light);
}

/* Sections Elementor transparentes sur pages intérieures (supprime les blocs colorés) */
.page-template-page-a-propos .elementor-section,
.page-template-page-art-et-artisanat .elementor-section,
.page-template-page-tarifs .elementor-section,
.page-template-page-infos-pratiques .elementor-section,
.page-template-page-massage-tui-na .elementor-section,
.page-template-page-acupuncture .elementor-section,
.page-template-page-ventouses .elementor-section {
  background-color: transparent !important;
  background-image: none !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Pages sous-sections énergétique chinoise */
.page-template-page-massage-tui-na .elementor-section > .elementor-container,
.page-template-page-acupuncture .elementor-section > .elementor-container,
.page-template-page-ventouses .elementor-section > .elementor-container {
  max-width: 780px !important;
  padding-left: 60px !important;
  padding-right: 60px !important;
}

.page-template-page-massage-tui-na .elementor-widget-image img,
.page-template-page-acupuncture .elementor-widget-image img,
.page-template-page-ventouses .elementor-widget-image img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
}

/* Colonnes Tui Na */
.page-template-page-massage-tui-na [data-id="col_tn_s2l"] { width: 55% !important; }
.page-template-page-massage-tui-na [data-id="col_tn_s2r"] { width: 45% !important; }
.page-template-page-massage-tui-na [data-id="col_tn_s3l"] { width: 45% !important; }
.page-template-page-massage-tui-na [data-id="col_tn_s3r"] { width: 55% !important; }
.page-template-page-massage-tui-na [data-id="col_tn_s4l"] { width: 55% !important; }
.page-template-page-massage-tui-na [data-id="col_tn_s4r"] { width: 45% !important; }

/* Colonnes Acupuncture */
.page-template-page-acupuncture [data-id="col_ac_s2l"] { width: 60% !important; }
.page-template-page-acupuncture [data-id="col_ac_s2r"] { width: 40% !important; }

/* Colonnes Ventouses */
.page-template-page-ventouses [data-id="col_vt_s2l"] { width: 55% !important; }
.page-template-page-ventouses [data-id="col_vt_s2r"] { width: 45% !important; }

/* Psychobiologie : fond transparent uniquement, le padding est géré dans Elementor */
.page-template-page-psychobiologie .elementor-section {
  background-color: transparent !important;
  background-image: none !important;
}

.page-main {
  min-height: 60vh;
  max-width: 960px;
  margin: 0 auto;
  padding: 48px 5% 64px;
}

/* Titre principal */
.page-main h1 {
  font-family: 'libre baskerville', serif;
  font-size: 32px;
  font-weight: 400;
  font-variant: small-caps;
  letter-spacing: 0.06em;
  color: var(--teal-dark);
  text-align: center;
  margin: 0 0 48px;
}

/* Paragraphes */
.page-main p {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 15px;
  font-weight: 300;
  line-height: 2;
  color: var(--text-dark);
  margin: 0 0 40px;
}

/* Photo centrée */
.page-main img {
  display: block;
  margin: 8px auto 16px;
  max-width: 360px;
  width: 100%;
}

/* Sous-titres (Qualifications, etc.) */
.page-main h2 {
  font-family: 'libre baskerville', serif;
  font-size: 17px;
  font-weight: 400;
  font-variant: small-caps;
  font-style: italic;
  letter-spacing: 0.08em;
  color: var(--teal-dark);
  margin: 16px 0 28px;
}

/* Liste qualifications — sans puces, espacée */
.page-main ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.page-main ul li {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.6;
  color: var(--text-dark);
}

/* Force les sections Elementor en pleine largeur */
.elementor-section.elementor-section-stretched {
  max-width: none !important;
  width: 100% !important;
  left: 0 !important;
}

.elementor-section {
  width: 100%;
}

.elementor-section .elementor-container {
  max-width: 100% !important;
}

/* =========================================
   OVERRIDES ELEMENTOR — PAGE D'ACCUEIL
   Le padding des sections (5% gauche/droite) est défini dans le JSON Elementor.
   On ne rajoute PAS de margin ici pour éviter le double décalage.
   On se contente de gérer le stretch des colonnes.
   ========================================= */

/* HERO (0c6ac28) — container remplit toute la zone de padding section */
.elementor-element-0c6ac28 > .elementor-container {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  align-items: stretch !important;
}
.elementor-element-0c6ac28 .elementor-column-align-middle {
  align-self: stretch !important;
}
.elementor-element-0c6ac28 .elementor-widget-wrap {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
}

/* ABOUT (cc07e31) — idem, le padding est dans le JSON */
.elementor-element-cc07e31 > .elementor-container {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* SERVICES (dc20a5f) — idem */
.elementor-element-dc20a5f > .elementor-container {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  align-items: stretch !important;
}
.elementor-element-dc20a5f .elementor-column-align-middle {
  align-self: stretch !important;
}
.elementor-element-dc20a5f .elementor-widget-wrap {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
}

.page-title {
  font-family: 'libre baskerville', serif;
  font-size: 36px;
  font-weight: 400;
  font-variant: small-caps;
  letter-spacing: 0.06em;
  color: var(--teal-dark);
  text-align: center;
  margin-bottom: 40px;
}

.page-intro {
  font-family: 'didot-w01-italic', serif;
  font-style: italic;
  font-size: 18px;
  color: var(--teal-dark);
  text-align: center;
  line-height: 1.7;
}

/* --- À propos --- */
.about-bio {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 48px;
}

.about-bio p {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.8;
  color: var(--text-dark);
}

.bio-photo {
  width: 360px;
  max-width: 100%;
  margin: 0 auto;
  display: block;
}

.qualifications {
  background-color: var(--teal-light);
  padding: 36px 40px;
  margin-top: 20px;
}

.section-title-small {
  font-family: 'libre baskerville', serif;
  font-size: 18px;
  font-variant: small-caps;
  letter-spacing: 0.1em;
  color: var(--teal-dark);
  margin-bottom: 20px;
}

.qualif-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.qualif-list li {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.6;
  color: var(--text-dark);
  padding-left: 16px;
  position: relative;
}

.qualif-list li::before {
  content: '';
  position: absolute;
  left: 0;
  color: var(--teal-dark);
}

/* --- Energétique chinoise --- */
.services-list {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-bottom: 48px;
}

.service-item {
  background-color: var(--teal-light);
  padding: 32px 36px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.service-item-title {
  font-family: 'libre baskerville', serif;
  font-size: 22px;
  font-weight: 400;
  color: var(--teal-dark);
}

.service-item p {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.7;
  color: var(--text-dark);
}

.testimonial-block {
  background-color: var(--green-light);
  padding: 40px;
  text-align: center;
  margin-top: 20px;
}

.testimonial-block blockquote {
  font-family: 'didot-w01-italic', serif;
  font-style: italic;
  font-size: 17px;
  line-height: 1.7;
  color: var(--teal-dark);
  margin-bottom: 12px;
}

.testimonial-block cite {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 13px;
  color: var(--text-dark);
}

/* --- Psychobiologie / contenu riche --- */
.content-block {
  margin-bottom: 48px;
}

.content-block h2 {
  font-family: 'libre baskerville', serif;
  font-size: 24px;
  font-weight: 400;
  color: var(--teal-dark);
  margin-bottom: 16px;
}

.section-subtitle {
  font-style: italic;
  font-size: 20px !important;
}

.content-block p {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.8;
  color: var(--text-dark);
  margin-bottom: 12px;
}

.content-list {
  list-style: none;
  margin: 12px 0 16px 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.content-list li {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.6;
  color: var(--text-dark);
  padding-left: 20px;
  position: relative;
}

.content-list li::before {
  content: '•';
  position: absolute;
  left: 4px;
  color: var(--teal-dark);
}

.content-img {
  display: block;
  margin: 24px auto;
  max-width: 100%;
  border-radius: 2px;
}

/* --- Tarifs --- */
.tarifs-img {
  display: block;
  margin: 0 auto 32px;
  max-width: 500px;
  width: 100%;
}

.tarifs-rdv {
  text-align: center;
}

/* --- Infos pratiques --- */
.cabinets-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin: 20px 0 32px;
}

.cabinet-card {
  background-color: var(--teal-light);
  padding: 28px 28px;
}

.cabinet-card h3 {
  font-family: 'libre baskerville', serif;
  font-size: 17px;
  font-weight: 700;
  color: var(--teal-dark);
  margin-bottom: 10px;
}

.cabinet-card p {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.6;
  color: var(--text-dark);
}

.contact-block {
  background-color: var(--green-light);
  padding: 36px 40px;
  text-align: center;
}

.contact-info {
  margin-bottom: 24px;
}

.contact-info p {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 16px;
  line-height: 2;
  color: var(--text-dark);
}

.contact-info a {
  color: var(--teal-dark);
  text-decoration: underline;
}

/* =========================================
   PAGE ACCUEIL
   ========================================= */

/* Colonne lotus — dégradé identique au site Wix */
[data-id="f9f084b"],
[data-id="f9f084b"] > .elementor-column-wrap,
[data-id="f9f084b"] > .elementor-widget-wrap {
  background-image: linear-gradient(360deg, rgb(0, 0, 0) 0%, rgb(123, 134, 111) 42.69%, var(--teal-medium) 100%) !important;
  background-color: transparent !important;
}

[data-id="76d41bb"] h2 {
  font-family: 'Amatic SC', cursive !important;
  font-weight: 700 !important;
}

/* =========================================
   PAGE ÉNERGÉTIQUE CHINOISE — Elementor natif
   ========================================= */

/* Laisser Elementor utiliser toute la largeur */
.page-template-page-energetique-chinoise .page-main {
  max-width: none;
  padding: 0;
}

/* Cards 3 colonnes — boutons alignés en bas via flex */
.page-template-page-energetique-chinoise [data-id="ec_col1"] .elementor-widget-wrap,
.page-template-page-energetique-chinoise [data-id="ec_col2"] .elementor-widget-wrap,
.page-template-page-energetique-chinoise [data-id="ec_col3"] .elementor-widget-wrap {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.page-template-page-energetique-chinoise [data-id="ec_col1"] .elementor-widget-text-editor,
.page-template-page-energetique-chinoise [data-id="ec_col2"] .elementor-widget-text-editor,
.page-template-page-energetique-chinoise [data-id="ec_col3"] .elementor-widget-text-editor {
  flex: 1 !important;
}

/* Gap entre les 3 cartes + moins de marge latérale */
.page-template-page-energetique-chinoise [data-id="ec_s1"] > .elementor-container {
  gap: 20px;
  max-width: 1100px !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.page-template-page-energetique-chinoise [data-id="ec_s1"] {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Boutons cartes — couleurs uniquement (police gérée par Elementor) */
.page-template-page-energetique-chinoise [data-id="ec_col1"] .elementor-button,
.page-template-page-energetique-chinoise [data-id="ec_col2"] .elementor-button,
.page-template-page-energetique-chinoise [data-id="ec_col3"] .elementor-button {
  background-color: var(--green-light) !important;
  color: var(--teal-dark) !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 10px 20px !important;
  width: 100% !important;
  display: block !important;
}
.page-template-page-energetique-chinoise [data-id="ec_col1"] .elementor-button:hover,
.page-template-page-energetique-chinoise [data-id="ec_col2"] .elementor-button:hover,
.page-template-page-energetique-chinoise [data-id="ec_col3"] .elementor-button:hover {
  background-color: var(--teal-medium) !important;
  color: var(--teal-dark) !important;
}

/* Titre de la page energetique-chinoise */
.page-template-page-energetique-chinoise [data-id="ec_s0"] {
  padding: 40px 0 20px !important;
}

/* ---- Slider testimonials ---- */
.testimonials-slider {
  position: relative;
  background-color: var(--teal-medium);
  padding: 70px 0 50px;
  text-align: center;
}

.testimonials-track-wrapper {
  overflow: hidden;
  width: 100%;
}

.testimonials-track {
  display: flex;
  width: 100%;
  transition: transform 0.5s ease;
}

.testimonial-slide {
  flex: 0 0 100%;
  width: 100%;
  padding: 0 120px;
  box-sizing: border-box;
}

.testimonial-quote-mark {
  font-size: 80px;
  color: var(--teal-light);
  line-height: 0.6;
  margin-bottom: 32px;
  font-family: Georgia, serif;
}

.testimonial-slide blockquote {
  font-family: 'didot-w01-italic', serif;
  font-style: italic;
  font-size: 20px;
  line-height: 1.75;
  color: var(--teal-dark);
  max-width: 760px;
  margin: 0 auto 24px;
}

.testimonial-author {
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 14px;
  letter-spacing: 0.06em;
  color: var(--teal-dark);
}

.slider-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  font-size: 48px;
  color: var(--teal-dark);
  cursor: pointer;
  padding: 0 16px;
  line-height: 1;
  opacity: 0.6;
  transition: opacity 0.2s;
}
.slider-btn:hover { opacity: 1; }
.slider-prev { left: 8px; }
.slider-next { right: 8px; }

.slider-dots {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 32px;
}

.dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 2px solid var(--teal-dark);
  background: transparent;
  cursor: pointer;
  padding: 0;
  transition: background 0.2s;
}
.dot.active { background: var(--teal-dark); }

.testimonials-rdv {
  margin-top: 36px;
}

.btn-testimonial-rdv {
  display: inline-block;
  font-family: 'avenir-lt-w01_35-light1475496', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-dark);
  background-color: var(--green-light);
  border: 1.5px solid var(--text-mid);
  padding: 12px 28px;
  text-decoration: none;
  transition: background 0.2s;
}
.btn-testimonial-rdv:hover { background-color: rgb(210, 235, 185); }

/* =========================================
   RESPONSIVE
   ========================================= */
@media (max-width: 768px) {
  .header-top { padding: 14px 20px; }

  .logo-text { font-size: 20px; }

  .btn-rdv { font-size: 11px; padding: 8px 12px; }

  .main-nav ul {
    flex-wrap: wrap;
    justify-content: center;
  }
  .main-nav a { padding: 10px 8px; font-size: 11px; }

  .hero { flex-direction: column; }
  .hero-left { padding: 40px 24px; }
  .hero-left h1 { font-size: 32px; }
  .hero-right { min-height: 280px; }
  .hero-right img { max-width: 240px; }

  .about { padding: 50px 24px; }

  .services { flex-direction: column; }
  .service-card { padding: 40px 24px; }

  .footer-links { gap: 8px 16px; }

  .cabinets-grid { grid-template-columns: 1fr; }
}

/* =========================================
   PAGE PSYCHOBIOLOGIE
   ========================================= */

/* Réduction des marges latérales */
.page-template-page-psychobiologie .elementor-section > .elementor-container {
  max-width: 780px !important;
  padding-left: 60px !important;
  padding-right: 60px !important;
}

/* Largeurs des colonnes (Elementor ne les applique pas sans passer par l'UI) */
.page-template-page-psychobiologie [data-id="f634b03"] { width: 58% !important; }
.page-template-page-psychobiologie [data-id="col_river"] { width: 42% !important; }
.page-template-page-psychobiologie [data-id="d4a7a3e"] { width: 55% !important; }
.page-template-page-psychobiologie [data-id="1cd4935"] { width: 45% !important; }

/* Images pleine largeur dans leur colonne */
.page-psychobio img,
.page-template-page-psychobiologie .elementor-widget-image img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
}

/* =========================================
   RESPONSIVE MOBILE
   ========================================= */
@media (max-width: 768px) {
  /* Hero accueil : lotus avant le texte sur mobile */
  [data-id="0c6ac28"] > .elementor-container {
    display: flex !important;
    flex-direction: column !important;
  }
  [data-id="f9f084b"] { order: -1 !important; } /* lotus en premier */
  [data-id="af8fb06"] { order: 1 !important; }  /* texte en second */


  /* Header : logo pleine largeur, btn-rdv + hamburger sur la 2e ligne */
  .header-top {
    padding: 10px 20px;
    flex-wrap: wrap;
    gap: 8px 0;
  }
  .logo {
    width: 100%;
  }
  .btn-rdv {
    display: block;
    font-size: 22px;
    padding: 8px 14px;
    border: none;
  }
  .btn-rdv-long { display: none; }
  .btn-rdv-short { display: inline; }
  .hamburger { display: flex; }

  /* Ajustement du logo */
  .logo-img { width: 40px; height: 40px; flex-shrink: 0; }
  .logo-text { flex: 1; font-size: 22px; text-align: center; }

  /* Nav mobile : cachée par défaut, s'ouvre en dropdown */
  .main-nav {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease;
  }
  .main-nav.nav-open {
    max-height: 500px;
  }
  .main-nav ul {
    flex-direction: column;
    gap: 0;
    padding: 8px 0;
  }
  .main-nav a {
    padding: 14px 24px;
    font-size: 28px;
    border-bottom: 1px solid rgba(77, 115, 105, 0.15);
  }

  /* Compensation header fixe mobile */
  body { padding-top: 80px; }
  .admin-bar body { padding-top: 112px; }

  /* Energétique chinoise : les 3 blocs en colonne sur mobile */
  .page-template-page-energetique-chinoise [data-id="ec_col1"],
  .page-template-page-energetique-chinoise [data-id="ec_col2"],
  .page-template-page-energetique-chinoise [data-id="ec_col3"] {
    width: 100% !important;
  }
  .page-template-page-energetique-chinoise [data-id="ec_col1"],
  .page-template-page-energetique-chinoise [data-id="ec_col2"] {
    margin-bottom: 16px;
  }

  /* Pages de services + psychobiologie : padding réduit sur mobile */
  .page-template-page-massage-tui-na .elementor-section > .elementor-container,
  .page-template-page-acupuncture .elementor-section > .elementor-container,
  .page-template-page-ventouses .elementor-section > .elementor-container,
  .page-template-page-psychobiologie .elementor-section > .elementor-container {
    padding-left: 16px !important;
    padding-right: 16px !important;
    max-width: 100% !important;
  }

  /* Empiler toutes les colonnes Elementor sur mobile */
  .page-template-page-massage-tui-na .elementor-column,
  .page-template-page-acupuncture .elementor-column,
  .page-template-page-ventouses .elementor-column {
    width: 100% !important;
  }

  /* Images pleine largeur */
  .page-template-page-massage-tui-na .elementor-widget-image img,
  .page-template-page-acupuncture .elementor-widget-image img,
  .page-template-page-ventouses .elementor-widget-image img {
    width: 100% !important;
    height: auto !important;
    max-height: 260px;
    object-fit: cover;
  }

  /* Psychobiologie : colonnes empilées sur mobile */
  .page-template-page-psychobiologie [data-id="f634b03"],
  .page-template-page-psychobiologie [data-id="col_river"],
  .page-template-page-psychobiologie [data-id="d4a7a3e"],
  .page-template-page-psychobiologie [data-id="1cd4935"] {
    width: 100% !important;
  }
}

