
  :root {
    --blanc:#FFFFFF; --fond:#F8F6F3; --beige:#EDE8DF;
    --vert:#6BBFAA; --vert-f:#4A9880; --vert-p:#EAF4F0;
    --or:#C8A96E; --or-p:#F5EEE0;
    --texte:#222222; --gris:#666260; --gris-l:#AAAAAA;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{font-family:'Raleway',sans-serif;background:var(--blanc);color:var(--texte);font-weight:300;overflow-x:hidden;}

  /* NAV */
  nav{position:fixed;top:0;width:100%;z-index:100;padding:20px 60px;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,0.97);border-bottom:1px solid var(--beige);}
  .logo{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:400;letter-spacing:0.3em;text-transform:uppercase;color:var(--texte);text-decoration:none;}
  .nav-links{display:flex;gap:clamp(14px,1.5vw,26px);list-style:none;align-items:center;flex-wrap:nowrap;}
  .nav-links a{white-space:nowrap;text-align:center;font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gris);text-decoration:none;transition:color 0.3s;}
  .nav-links a:hover{color:var(--vert-f);}
  .nav-dropdown{position:relative;}
  .nav-dropdown>a::after{content:' ↓';font-size:0.5rem;}
  .nav-dropdown-menu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);background:var(--blanc);border:1px solid var(--beige);border-top:2px solid var(--vert);min-width:220px;z-index:200;padding:8px 0;}
  .nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown.open .nav-dropdown-menu{display:block;}
  .nav-dropdown-menu a{display:block;padding:10px 20px;font-size:0.58rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--gris);text-decoration:none;transition:background 0.2s;}
  .nav-dropdown-menu a:hover{background:var(--vert-p);color:var(--vert-f);}
  .nav-dropdown-menu a::after{content:none!important;}
  .nav-cta{color:var(--blanc)!important;background:var(--vert)!important;padding:9px 22px;transition:background 0.3s!important;}
  .nav-cta:hover{background:var(--vert-f)!important;}

  /* COMMUNS */
  .label{font-size:0.58rem;letter-spacing:0.32em;text-transform:uppercase;color:var(--vert);display:block;margin-bottom:12px;}
  .regle{width:36px;height:1px;background:var(--or);margin:14px 0;}
  .corps{font-size:0.84rem;line-height:2.05;color:var(--gris);margin-bottom:14px;}
  .t-section{font-family:'Cormorant Garamond',serif;font-size:clamp(1.8rem,3vw,2.8rem);font-weight:300;line-height:1.2;color:var(--texte);margin-bottom:16px;}
  .t-section em{font-style:italic;color:var(--vert);}
  .btn-v{display:inline-block;font-size:0.58rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--blanc);background:var(--vert);padding:13px 30px;text-decoration:none;transition:background 0.3s;}
  .btn-v:hover{background:var(--vert-f);}
  .btn-t{display:inline-flex;align-items:center;gap:8px;font-size:0.58rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--texte);text-decoration:none;border-bottom:1px solid var(--or);padding-bottom:2px;transition:color 0.3s;}
  .btn-t:hover{color:var(--vert-f);}
  .btn-t::after{content:'→';}
  .photo-box{background:var(--beige);display:flex;align-items:center;justify-content:center;overflow:hidden;}
  .pinfo{text-align:center;padding:16px;}
  .pinfo span{font-family:'Cormorant Garamond',serif;font-size:0.85rem;font-style:italic;color:var(--or);display:block;margin-bottom:3px;}
  .pinfo small{font-size:0.55rem;letter-spacing:0.1em;color:var(--gris-l);}
  .citation-bloc{border-left:2px solid var(--or);padding:16px 22px;background:var(--fond);margin:20px 0;}
  .citation-bloc p{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-style:italic;line-height:1.7;color:var(--vert-f);margin-bottom:6px;}
  .citation-bloc cite{font-size:0.55rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--gris-l);font-style:normal;}
  .tag{display:inline-block;font-size:0.55rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--vert-f);border:1px solid var(--vert);padding:4px 10px;margin:2px;}

  /* PAGE BREAKS */
  .page-break{background:var(--texte);padding:18px 60px;display:flex;align-items:center;justify-content:space-between;}
  .page-break-left{display:flex;align-items:center;gap:16px;}
  .page-break-arrow{font-size:0.6rem;color:var(--vert);letter-spacing:0.1em;}
  .page-break-title{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:300;color:var(--blanc);letter-spacing:0.15em;}
  .page-break-sub{font-size:0.55rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--vert);}
  .page-break-num{font-family:'Cormorant Garamond',serif;font-size:0.75rem;font-weight:300;color:rgba(255,255,255,0.3);letter-spacing:0.2em;}

  /* HERO */
  .hero{padding-top:68px;display:grid;grid-template-columns:55% 45%;align-items:stretch;}
  .hero-g{padding:24px 70px 40px 60px;display:flex;flex-direction:column;justify-content:flex-start;background:var(--blanc);}
  .hero-label{font-size:0.58rem;letter-spacing:0.32em;text-transform:uppercase;color:var(--vert);margin-bottom:28px;display:flex;align-items:center;gap:12px;}
  .hero-label::before{content:'';width:24px;height:1px;background:var(--or);}
  .hero-titre{font-family:'Cormorant Garamond',serif;font-size:clamp(3rem,5vw,5.2rem);font-weight:300;line-height:1.08;color:var(--texte);margin-bottom:28px;}
  .hero-titre em{font-style:italic;color:var(--vert-f);}
  .hero-sous{font-size:0.84rem;line-height:2;color:var(--gris);max-width:440px;margin-bottom:36px;}
  .hero-actions{display:flex;gap:20px;align-items:center;}
  .hero-d{display:flex;flex-direction:column;min-height:0;position:relative;}
  .hero-photo{flex:1;min-height:0;overflow:hidden;position:relative;}
  .hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
  .hero-quote{background:var(--texte);padding:24px 36px;flex-shrink:0;}
  .hero-quote blockquote{font-family:'Cormorant Garamond',serif;font-size:1rem;font-style:italic;font-weight:300;color:rgba(255,255,255,0.85);line-height:1.7;margin-bottom:10px;}
  .hero-quote cite{font-size:0.55rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--vert);}

  /* POUR QUI */
  .pour-qui{padding:100px 60px;background:var(--blanc);}
  .pq-wrap{max-width:1200px;margin:0 auto;}
  .pq-head{display:grid;grid-template-columns:1fr 2fr;gap:60px;align-items:end;margin-bottom:40px;}
  .pq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--beige);}
  .pq-c{background:var(--blanc);padding:36px 28px;transition:background 0.3s;}
  .pq-c:hover{background:var(--vert-p);}
  .pq-n{font-family:'Cormorant Garamond',serif;font-size:2.5rem;font-weight:300;color:var(--beige);display:block;margin-bottom:12px;line-height:1;}
  .pq-c h3{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:400;color:var(--texte);margin-bottom:10px;line-height:1.3;}
  .pq-c p{font-size:0.81rem;line-height:1.85;color:var(--gris);}

  /* SOMMAIRE */
  .sommaire{padding:56px 60px 80px;background:var(--blanc);}
  .sommaire-wrap{max-width:1200px;margin:0 auto;}

  /* CONVICTION */
  .conviction-wrap{max-width:1200px;margin:0 auto;padding:0 60px;}

  /* TÉMOIGNAGES */
  .temoignages{padding:80px 60px;background:var(--fond);}
  .temo-wrap{max-width:1200px;margin:0 auto;}
  .temo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--beige);margin-top:32px;}
  .temo-card{background:var(--blanc);padding:40px 32px;}
  .temo-text{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-style:italic;line-height:1.75;color:var(--gris);margin-bottom:20px;}
  .temo-meta{font-size:0.6rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--vert);}
  .temo-placeholder{background:var(--beige);border:1px dashed var(--or);padding:40px 32px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:200px;}
  .temo-placeholder p{font-size:0.75rem;color:var(--gris-l);font-style:italic;}

  /* À PROPOS */
  .apropos{padding:100px 60px;background:var(--blanc);}
  .ap-wrap{max-width:1200px;margin:0 auto;}
  .ap-hero{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;margin-bottom:60px;}
  .ap-accroche{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,3.5vw,3rem);font-weight:300;line-height:1.2;color:var(--texte);margin-bottom:24px;}
  .ap-accroche em{font-style:italic;color:var(--vert-f);}
  .certs{display:flex;flex-direction:column;gap:1px;}
  .cert{background:var(--fond);padding:14px 20px;display:flex;align-items:flex-start;gap:12px;transition:background 0.3s;border-left:2px solid transparent;}
  .cert:hover{background:var(--vert-p);border-left-color:var(--vert);}
  .cert-dot{width:5px;height:5px;border-radius:50%;background:var(--or);flex-shrink:0;margin-top:7px;}
  .cert-t{font-family:'Cormorant Garamond',serif;font-size:0.96rem;font-weight:400;color:var(--texte);display:block;margin-bottom:2px;}
  .cert-s{font-size:0.71rem;color:var(--gris-l);line-height:1.5;}
  .chiffres-ap{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--beige);margin:48px 0;}
  .ch-ap{background:var(--vert);padding:28px 20px;text-align:center;}
  .ch-ap .n{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:300;color:var(--blanc);display:block;line-height:1;margin-bottom:6px;}
  .ch-ap .l{font-size:0.6rem;letter-spacing:0.12em;color:rgba(255,255,255,0.7);line-height:1.5;}
  .ap-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--beige);}
  .ap-bloc{background:var(--blanc);padding:40px 36px;}
  .ap-bloc h3{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:400;color:var(--texte);margin-bottom:16px;}

  /* ANANDA */
  .ananda{display:grid;grid-template-columns:40% 60%;}
  .ananda-vis{background:var(--vert);padding:80px 60px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
  .mandala{width:200px;height:200px;margin-bottom:24px;animation:spin 60s linear infinite;}
  @keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
  .ananda-tag{font-size:0.58rem;letter-spacing:0.28em;text-transform:uppercase;color:rgba(255,255,255,0.6);margin-bottom:16px;display:block;}
  .ananda-nom{font-family:'Cormorant Garamond',serif;font-size:3rem;font-weight:300;color:var(--blanc);line-height:1.1;margin-bottom:16px;}
  .ananda-desc{font-size:0.84rem;line-height:1.9;color:rgba(255,255,255,0.8);max-width:260px;}
  .ananda-cnt{padding:80px 60px;background:var(--fond);}
  .ananda-pills{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0;}
  .pill{font-size:0.58rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--vert-f);border:1px solid var(--vert);padding:6px 14px;}
  .formats{border-top:1px solid var(--beige);margin-top:24px;padding-top:20px;}
  .format-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--beige);}
  .format-nom{font-family:'Cormorant Garamond',serif;font-size:0.95rem;color:var(--texte);}
  .format-det{font-size:0.72rem;color:var(--gris-l);}

  /* ACCOMPAGNEMENTS */
  .accomp{padding:100px 60px;background:var(--blanc);}
  .acc-wrap{max-width:1200px;margin:0 auto;}
  .offre-section{margin-bottom:60px;}
  .offre-section-titre{display:flex;align-items:center;gap:20px;margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid var(--beige);}
  .offre-section-titre h2{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:300;color:var(--texte);}
  .offre-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--beige);}
  .offre-card{background:var(--fond);padding:36px 28px;transition:background 0.3s;}
  .offre-card:hover{background:var(--vert-p);}
  .offre-card h3{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:400;color:var(--texte);margin-bottom:8px;line-height:1.3;}
  .offre-card .sous-titre{font-size:0.58rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--vert);display:block;margin-bottom:12px;}
  .offre-card p{font-size:0.81rem;line-height:1.9;color:var(--gris);margin-bottom:10px;}
  .offre-card .detail{font-size:0.75rem;color:var(--gris-l);line-height:1.7;font-style:italic;}
  .offre-immer{background:var(--vert);padding:48px 52px;margin-bottom:1px;}
  .offre-immer h3{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:300;color:var(--blanc);margin-bottom:8px;}
  .offre-immer .sous{font-size:0.58rem;letter-spacing:0.2em;text-transform:uppercase;color:rgba(255,255,255,0.6);display:block;margin-bottom:16px;}
  .offre-immer p{font-size:0.84rem;line-height:1.95;color:rgba(255,255,255,0.85);margin-bottom:12px;max-width:720px;}
  .prog-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 40px;margin:16px 0 20px;}
  .prog-list li{font-size:0.8rem;color:rgba(255,255,255,0.8);line-height:1.65;display:flex;gap:10px;}
  .prog-list li::before{content:'·';color:var(--or);flex-shrink:0;}
  .conf-bloc{background:var(--or-p);padding:20px 28px;display:flex;align-items:center;gap:14px;border-left:2px solid var(--or);margin-top:20px;}
  .conf-bloc p{font-size:0.81rem;line-height:1.75;color:var(--gris);font-style:italic;}

  /* ENTREPRISES */
  .entreprises{padding:100px 60px;background:var(--blanc);}
  .ent-wrap{max-width:1200px;margin:0 auto;}
  .ent-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--beige);margin-bottom:48px;}
  .ent-st{background:var(--vert);padding:28px 20px;text-align:center;}
  .ent-st .n{font-family:'Cormorant Garamond',serif;font-size:2.2rem;font-weight:300;color:var(--blanc);display:block;line-height:1;margin-bottom:6px;}
  .ent-st .l{font-size:0.63rem;letter-spacing:0.1em;color:rgba(255,255,255,0.7);line-height:1.5;}
  .ent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--beige);}
  .ent-card{background:var(--blanc);padding:32px 24px;transition:background 0.3s;}
  .ent-card:hover{background:var(--vert-p);}
  .ent-card h3{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:400;color:var(--texte);margin-bottom:10px;}
  .ent-card .sous{font-size:0.56rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--vert);display:block;margin-bottom:10px;}
  .ent-card p{font-size:0.79rem;line-height:1.85;color:var(--gris);}

  /* CONTACT */
  .contact{padding:100px 60px;background:var(--blanc);}
  .ct-wrap{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
  .ct-texte h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2.5rem,4vw,4rem);font-weight:300;line-height:1.1;color:var(--texte);margin-bottom:20px;}
  .ct-texte h2 em{font-style:italic;color:var(--vert-f);}
  .ct-infos{margin-top:32px;display:flex;flex-direction:column;gap:10px;}
  .ct-info{display:flex;gap:12px;align-items:center;font-size:0.82rem;color:var(--gris);}
  .ct-box{background:var(--blanc);padding:40px 36px;border-top:2px solid var(--vert);}
  .ct-box h3{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:300;color:var(--texte);margin-bottom:8px;}
  .ct-box p{font-size:0.78rem;color:var(--gris-l);margin-bottom:24px;}
  .ct-note{font-size:0.72rem;color:var(--gris-l);font-style:italic;margin-top:16px;line-height:1.7;}

  /* CTA FINAL */
  .cta-final{padding:80px 60px;background:var(--vert-f);text-align:center;}
  .cta-final h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3.5rem);font-weight:300;color:var(--blanc);margin-bottom:16px;}
  .cta-final h2 em{font-style:italic;color:rgba(255,255,255,0.7);}
  .cta-final p{font-size:0.84rem;color:rgba(255,255,255,0.75);margin-bottom:32px;}
  .cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
  .btn-blanc{display:inline-block;font-size:0.58rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--vert-f);background:var(--blanc);padding:13px 30px;text-decoration:none;transition:background 0.3s;}

  /* CITATION FINALE */
  .citation-finale{padding:80px 60px;background:var(--texte);text-align:center;}
  .citation-finale blockquote{font-family:'Cormorant Garamond',serif;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:300;font-style:italic;color:var(--blanc);line-height:1.5;margin-bottom:16px;}
  .citation-finale cite{font-size:0.6rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--vert);}

  /* FOOTER */
  footer{padding:32px 60px;background:var(--beige);display:flex;justify-content:space-between;align-items:center;}
  .f-logo{font-family:'Cormorant Garamond',serif;font-size:0.9rem;font-weight:400;letter-spacing:0.25em;text-transform:uppercase;color:var(--texte);}
  .f-tag{font-size:0.6rem;letter-spacing:0.14em;color:var(--gris);margin-top:4px;}
  .f-nav{display:flex;gap:20px;list-style:none;}
  .f-nav a{font-size:0.58rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--gris);text-decoration:none;transition:color 0.3s;}
  .f-nav a:hover{color:var(--vert-f);}
  .f-right{font-size:0.6rem;color:var(--gris-l);text-align:right;}

  @keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}

  /* ============================================
     FORMULAIRE CONTACT
     ============================================ */
  .ct-form{display:flex;flex-direction:column;gap:16px;margin:20px 0 24px;}
  .hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
  .ct-lbl{display:flex;flex-direction:column;gap:6px;}
  .ct-lbl>span{font-size:0.58rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--gris);font-weight:400;}
  .ct-lbl>span em{font-style:normal;color:var(--vert);margin-left:2px;}
  .ct-lbl input,.ct-lbl select,.ct-lbl textarea{
    font-family:'Raleway',sans-serif;font-size:0.85rem;color:var(--texte);
    background:var(--fond);border:1px solid var(--beige);border-radius:0;
    padding:12px 14px;width:100%;transition:border-color 0.25s,background 0.25s;
    -webkit-appearance:none;appearance:none;
  }
  .ct-lbl select{
    background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%236BBFAA' d='M5 6L0 0h10z'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer;
  }
  .ct-lbl textarea{resize:vertical;min-height:100px;font-family:'Raleway',sans-serif;line-height:1.6;}
  .ct-lbl input:focus,.ct-lbl select:focus,.ct-lbl textarea:focus{
    outline:none;border-color:var(--vert);background:var(--blanc);
  }
  .ct-lbl input::placeholder,.ct-lbl textarea::placeholder{color:var(--gris-l);font-style:italic;}
  .ct-submit{border:none;cursor:pointer;font-family:'Raleway',sans-serif;width:100%;text-align:center;justify-content:center;margin-top:6px;}
  .ct-submit:disabled{opacity:0.6;cursor:wait;}
  .ct-success{
    background:var(--vert-p);border-left:2px solid var(--vert);padding:18px 22px;margin-top:8px;
    animation:fadeUp 0.5s ease;
  }
  .ct-success strong{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:400;color:var(--vert-f);display:block;margin-bottom:4px;}
  .ct-success p{font-size:0.8rem;color:var(--gris);line-height:1.6;}

  /* ============================================
     MODALES (mentions legales / CGV)
     ============================================ */
  .modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;visibility:hidden;transition:opacity 0.3s ease,visibility 0.3s ease;}
  .modal[hidden]{display:flex !important;}
  body.modal-open .modal[data-active="true"]{opacity:1;visibility:visible;}
  body.modal-open{overflow:hidden;}
  .modal-backdrop{position:absolute;inset:0;background:rgba(34,34,34,0.55);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);cursor:pointer;}
  .modal-card{position:relative;background:var(--blanc);max-width:780px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,0.25);transform:translateY(16px);transition:transform 0.4s ease;}
  body.modal-open .modal[data-active="true"] .modal-card{transform:translateY(0);}
  .modal-close{position:absolute;top:14px;right:18px;width:34px;height:34px;background:transparent;border:none;font-size:1.6rem;line-height:1;color:var(--gris);cursor:pointer;padding:0;z-index:2;transition:color 0.25s,transform 0.25s;font-family:'Raleway',sans-serif;font-weight:200;}
  .modal-close:hover{color:var(--vert-f);transform:rotate(90deg);}
  .modal-body{padding:48px 48px 40px;overflow-y:auto;-webkit-overflow-scrolling:touch;}
  .modal-body .corps{font-size:0.78rem;line-height:1.85;}
  .modal-body h2{margin-top:0;}
  /* ============================================
     HAMBURGER + MOBILE MENU (cache sur desktop)
     ============================================ */
  .nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;background:transparent;border:none;cursor:pointer;padding:8px;z-index:110;margin-left:auto;}
  .nav-toggle span{display:block;width:22px;height:1.5px;background:var(--texte);transition:transform 0.35s ease,opacity 0.25s ease;transform-origin:center;}
  body.menu-open .nav-toggle span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
  body.menu-open .nav-toggle span:nth-child(2){opacity:0;}
  body.menu-open .nav-toggle span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

  .mobile-menu{position:fixed;inset:0;background:var(--blanc);z-index:105;display:flex;flex-direction:column;padding:80px 32px 40px;overflow-y:auto;opacity:0;visibility:hidden;transition:opacity 0.4s ease,visibility 0.4s ease;-webkit-overflow-scrolling:touch;}
  body.menu-open .mobile-menu{opacity:1;visibility:visible;}
  body.menu-open{overflow:hidden;}
  .mobile-menu .mm-section{font-size:0.55rem;letter-spacing:0.32em;text-transform:uppercase;color:var(--vert);padding:24px 0 12px;display:flex;align-items:center;gap:10px;}
  .mobile-menu .mm-section::before{content:'';width:18px;height:1px;background:var(--or);}
  .mobile-menu .mm-section:first-child{padding-top:0;}
  .mobile-menu a{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:300;color:var(--texte);text-decoration:none;padding:14px 0;border-bottom:1px solid var(--beige);transition:color 0.3s,padding-left 0.3s;display:block;}
  .mobile-menu a:hover,.mobile-menu a:focus{color:var(--vert-f);padding-left:8px;}
  .mobile-menu a.mm-cta{background:var(--vert);color:var(--blanc);text-align:center;margin-top:32px;padding:18px;border:none;font-family:'Raleway',sans-serif;font-size:0.65rem;letter-spacing:0.24em;text-transform:uppercase;font-weight:400;}
  .mobile-menu a.mm-cta:hover{background:var(--vert-f);color:var(--blanc);padding-left:18px;}

  /* ============================================
     RESPONSIVE - TABLETTE (<= 1024px)
     ============================================ */
  @media (max-width:1180px){.nav-links{display:none;}.nav-toggle{display:flex;}}
  @media (max-width:1024px){
    /* Nav : passage en hamburger des la tablette (7 items + 2 sous-menus = trop serres) */
    .nav-links{display:none;}
    .nav-toggle{display:flex;}
    nav{padding:16px 32px;}

    .pour-qui,.temoignages,.apropos,.accomp,.entreprises,.contact,
    .cta-final,.citation-finale{padding:70px 32px;}
    .ananda-vis,.ananda-cnt{padding:60px 36px;}
    .hero-g{padding:60px 40px;}
    .conviction-wrap{padding:0 32px;}
    .page-break{padding:18px 32px;}
    footer{padding:28px 32px;}

    section[style*="padding:80px 60px"],
    section[style*="padding:100px 60px"]{padding:70px 32px !important;}
    div[style*="padding:10px 60px"]{padding:10px 32px !important;}

    .hero{grid-template-columns:50% 50%;}

    .pq-grid,.temo-grid,.ent-grid{grid-template-columns:repeat(2,1fr);}
    .chiffres-ap{grid-template-columns:repeat(3,1fr);}
    .ent-stats{grid-template-columns:repeat(2,1fr);}

    [style*="grid-template-columns:repeat(4,1fr)"],
    [style*="grid-template-columns: repeat(4,1fr)"],
    [style*="grid-template-columns:repeat(5,1fr)"],
    [style*="grid-template-columns: repeat(5,1fr)"]{
      grid-template-columns:repeat(2,1fr) !important;
    }

    [style*="grid-template-columns:1fr 2fr"],
    [style*="grid-template-columns: 1fr 2fr"]{gap:40px !important;}
  }

  /* ============================================
     RESPONSIVE - MOBILE (<= 640px)
     ============================================ */
  @media (max-width:640px){
    nav{padding:14px 20px;}

    .pour-qui,.temoignages,.apropos,.accomp,.entreprises,.contact,
    .cta-final,.citation-finale{padding:54px 20px;}
    .ananda-vis,.ananda-cnt{padding:48px 24px;}
    .hero-g{padding:40px 24px 50px;}
    .hero-quote{padding:24px 24px;}
    .conviction-wrap{padding:0 20px;}

    section[style*="padding:80px 60px"],
    section[style*="padding:100px 60px"]{padding:54px 20px !important;}
    div[style*="padding:10px 60px"]{padding:10px 20px !important;}

    .page-break{padding:16px 20px;flex-direction:column;align-items:flex-start;gap:6px;}
    .page-break-num{font-size:0.65rem;}
    .page-break-title{font-size:0.92rem;}

    .hero{display:flex;flex-direction:column;min-height:auto;}
    .hero-d{display:flex;flex-direction:column;order:-1;}
    .hero-photo{min-height:300px;max-height:400px;flex:none;}
    .hero-quote blockquote{font-size:0.92rem;}
    .hero-actions{flex-direction:column;align-items:stretch;gap:14px;}
    .hero-actions a{text-align:center;justify-content:center;}

    /* Toutes les grilles nommees -> 1 colonne */
    .pq-head,.pq-grid,.temo-grid,.ap-hero,.ap-grid,.ananda,
    .offre-grid,.ent-grid,.ct-wrap,.prog-list{
      grid-template-columns:1fr;
    }
    .ap-hero,.pq-head,.ct-wrap{gap:36px;}
    .chiffres-ap{grid-template-columns:repeat(2,1fr);}
    .ent-stats{grid-template-columns:repeat(2,1fr);}

    /* Filet de securite : grilles inline -> 1 colonne */
    [style*="grid-template-columns"]{grid-template-columns:1fr !important;}

    /* Cards : padding interne reduit */
    .pq-c,.temo-card,.offre-card,.ap-bloc,.ent-card{padding:28px 22px;}
    .ct-box{padding:32px 24px;}
    .offre-immer{padding:34px 24px;}
    .temo-placeholder{padding:32px 22px;}

    /* Ananda visuel : reduit */
    .mandala{width:160px;height:160px;}
    .ananda-nom{font-size:2.4rem;}

    /* Footer : empile */
    footer{padding:28px 20px;flex-direction:column;gap:18px;text-align:center;}
    .f-right{text-align:center;}
    .f-nav{flex-wrap:wrap;justify-content:center;gap:14px;}

    /* Tap targets accessibles */
    .nav-cta,.btn-v,.btn-blanc{min-height:44px;display:inline-flex;align-items:center;justify-content:center;}

    .citation-bloc{padding:14px 18px;}
    .format-row{flex-direction:column;align-items:flex-start;gap:4px;}

    /* Modale plein ecran sur mobile */
    .modal{padding:0;}
    .modal-card{max-height:100vh;height:100vh;max-width:100%;}
    .modal-body{padding:64px 24px 32px;}
    .modal-body .corps{font-size:0.78rem;}
  }

  /* Anti-overflow horizontal global */
  html,body{overflow-x:hidden;max-width:100%;}
  img{max-width:100%;height:auto;}


@media(max-width:760px){.acc-signature > div{grid-template-columns:1fr !important}.acc-signature > div > div:first-child{min-height:300px}}


      @media(max-width:760px){
        .acc-card > div{ grid-template-columns:1fr !important; gap:24px !important; }
        .acc-card figure{ aspect-ratio:4/5; max-width:220px; }
        .acc-card{ padding:28px 22px !important; }
      }
    

@media(max-width:760px){section[style*="CONVICTION"] > div > div[style*="grid-template-columns:1fr 1fr 1fr"]{grid-template-columns:1fr !important}}


      @media(max-width:760px){
        section[style*="MON APPROCHE"] > div > div[style*="grid-template-columns:1fr 1.5fr"]{
          grid-template-columns:1fr !important;
          gap:32px !important;
        }
        section[style*="MON APPROCHE"] > div > div[style*="grid-template-columns:1fr 1.5fr"] > figure{
          aspect-ratio:4/5;
        }
      }
    


      @media(max-width:760px){
        .temoignages > .temo-wrap > div[style*="grid-template-columns:1fr 1fr"]{
          grid-template-columns:1fr !important;
          gap:24px !important;
        }
      }
    


        .porte-cta-retraite:hover img{transform:scale(1.04)}
        .porte-cta-retraite:hover span{background:#fff;color:var(--vert-f)}
      


      @media(max-width:760px){
        .acc-cat{ grid-template-columns:1fr !important; gap:28px !important; }
.offer-grid{ grid-template-columns:1fr !important; gap:22px !important; } .offer-photo{ aspect-ratio:4/3 !important; max-height:320px !important; } .acc-intro-grid{ grid-template-columns:1fr !important; } .acc-intro-photo{ min-height:320px !important; }
        .acc-fig{ position:static !important; aspect-ratio:4/5; max-width:280px; }
        #accompagnement ~ section .acc-cat > div > div[style*="grid-template-columns:1fr 0.85fr"]{}
      }
      @media(max-width:760px){
        section.accomp div[style*="grid-template-columns:1.15fr 0.85fr"]{ grid-template-columns:1fr !important; gap:28px !important; }
        section.accomp div[style*="repeat(2,1fr)"]{ grid-template-columns:1fr !important; }
      }
    

@media(max-width:760px){.ji-top,.ji-lists,.ji-introgrid,.ji-approche{grid-template-columns:1fr !important}.ji-exp{columns:1 !important}}

@media(max-width:760px){.pt-learn-grid{grid-template-columns:1fr !important;gap:36px !important}}


      @media(max-width:760px){
        section.accomp #pt-hero, section.accomp .pt-day{ grid-template-columns:1fr !important; gap:28px !important; }
      }
    


      @media(max-width:760px){
        section.accomp #rsm-hero, section.accomp .rsm-2col{ grid-template-columns:1fr !important; gap:30px !important; }
        section.accomp .rsm-grid{ grid-template-columns:1fr !important; }
        section.accomp .rsm-themes{ grid-template-columns:1fr !important; gap:32px !important; }
        section.accomp div[style*="repeat(3,1fr)"]{ grid-template-columns:1fr !important; }
      }
    


.balv{background:#fff;color:#222;font-family:'Raleway',sans-serif}
.balv .sec{padding:clamp(60px,8.5vw,120px) 0}
.balv .pad{padding-left:clamp(24px,6vw,90px);padding-right:clamp(24px,6vw,90px)}
.balv .wt{max-width:720px;margin:0 auto;text-align:center}
.balv .kick{font-size:0.7rem;letter-spacing:0.34em;text-transform:uppercase;color:#6BBFAA;margin:0 0 20px}
.balv h2.t{font-family:'Cormorant Garamond',Georgia,serif;font-weight:300;font-size:clamp(1.9rem,4vw,3rem);line-height:1.14;margin:0 0 24px;color:#1a1a1a}
.balv p.b{font-size:0.98rem;line-height:1.85;color:#3a3a3a;margin:0 0 16px;font-weight:300}
.balv .full{width:100%;display:block;object-fit:cover;height:clamp(240px,34vh,420px)}
.balv .mos{display:grid;gap:8px}
.balv .m3{grid-template-columns:repeat(3,1fr)}
.balv .two{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.balv .twtxt{padding:clamp(46px,6vw,96px) clamp(28px,5vw,76px);display:flex;flex-direction:column;justify-content:center}
.balv .cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,60px);text-align:left;max-width:1120px;margin:0 auto}
.balv .col h3{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:1.3rem;color:#4A9880;margin:0 0 16px}
.balv .col ul{list-style:none;padding:0;margin:0}
.balv .col li{font-size:0.88rem;line-height:1.7;color:#444;font-weight:300;border-bottom:1px solid #f0efec;padding:7px 0}
.balv .ret{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#ececec;max-width:1080px;margin:0 auto}
.balv .ret>div{background:#fff;padding:clamp(28px,3.4vw,46px)}
.balv .ret h3{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:1.35rem;color:#1a1a1a;margin:0 0 10px}
.balv .ret p{font-size:0.9rem;line-height:1.7;color:#555;font-weight:300;margin:0}
.balv .btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}
.balv .multi{columns:3;column-gap:48px;max-width:980px;margin:0 auto;text-align:center}
.balv .multi p{font-size:0.92rem;line-height:1.95;color:#444;font-weight:300;break-inside:avoid;margin:0}
.balv .rmn{columns:2;column-gap:64px;max-width:740px;margin:0 auto;text-align:left}
.balv .rmn p{font-size:0.96rem;line-height:2;color:#3a3a3a;font-weight:300;break-inside:avoid;margin:0}
@media(max-width:860px){.balv .two{grid-template-columns:1fr}.balv .cols3{grid-template-columns:1fr;gap:34px}.balv .m3{grid-template-columns:1fr 1fr}.balv .ret{grid-template-columns:1fr}.balv .multi{columns:1}.balv .rmn{columns:1;text-align:center}.balv .twtxt{order:2}}



    @media(max-width:760px){
      section > div > div[style*="padding:44px 60px"] > div[style*="grid-template-columns:2fr 1fr"]{
        grid-template-columns:1fr !important;
        gap:24px !important;
      }
    }
  

/* ===== FAQ ===== */
.faq-wrap{max-width:880px;margin:0 auto;padding:30px 60px 110px}
.faq-item{border-bottom:1px solid var(--beige)}
.faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;font-family:'Cormorant Garamond',serif;font-size:clamp(1.2rem,2vw,1.45rem);font-weight:400;color:var(--texte)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';font-family:Raleway,sans-serif;color:var(--or);font-size:1.5rem;font-weight:300;flex-shrink:0;transition:transform .3s ease}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item .faq-a{padding:0 0 28px;max-width:680px}
.faq-item .faq-a p{margin-bottom:10px}
.faq-item .faq-a ul{margin:8px 0 16px}
.faq-item .faq-a li{font-family:Raleway,sans-serif;font-size:0.95rem;font-weight:300;line-height:1.9;color:var(--gris);list-style:none;position:relative;padding-left:18px}
.faq-item .faq-a li::before{content:'·';color:var(--or);position:absolute;left:0;font-weight:500}
@media(max-width:700px){.faq-wrap{padding:20px 24px 80px}}

@media(max-width:880px){.rsm-inclus{grid-template-columns:1fr !important}}
@media(max-width:880px){.rsm-comp{grid-template-columns:1fr !important}}

/* ===== TEST — refonte mise en page Bali (scopé à cette page) ===== */
.balv .sec{padding:clamp(40px,5.5vw,80px) 0}
.balv .bx-duo{display:grid;grid-template-columns:1.02fr 0.98fr;gap:clamp(30px,4.5vw,64px);align-items:center;max-width:1200px;margin:0 auto}
.balv .bx-duo .bx-txt{text-align:left}
.balv .bx-duo .bx-txt .btns{justify-content:flex-start;margin-top:24px}
.balv .bx-mos{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.balv .bx-mos figure{margin:0;aspect-ratio:4/3;overflow:hidden}
.balv .bx-mos img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.balv .bx-mos figure:hover img{transform:scale(1.04)}
.balv .quoteband{background:#F8F6F3}
.balv .cols3 .col li{padding:6px 0}
.balv .bx-exp{align-items:stretch}
.balv .bx-exp .bx-mos{grid-template-rows:repeat(3,1fr);height:100%}
.balv .bx-exp .bx-mos figure{aspect-ratio:auto;height:100%}
.balv .exp-pillars{display:grid;gap:30px;margin-top:34px}
@media(max-width:880px){.balv .bx-duo{grid-template-columns:1fr;gap:28px}.balv .bx-exp .bx-mos figure{aspect-ratio:4/3}.balv .bx-duo .bx-txt{order:1}.balv .bx-duo .bx-media{order:2}}
