/* ═══════════════════════════════════════════════════════
   SY GROUP CORPORATE — Style Présidentiel
   Noir #080808 · Rouge #E52421 · Or #C9A84C · Blanc #FFF
   ═══════════════════════════════════════════════════════ */
:root{
  --noir:#111111; --rouge:#CC0000; --or:#D4AF7A; --or-dark:#C8973A;
  --blanc:#FAFAF8; --anthracite:#1C1C1C; --gris:#6B6B6B; --bordure:#E8E6E0;
  --gris1:rgba(255,255,255,0.55); --gris2:rgba(255,255,255,0.12); --T:0.3s ease;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',sans-serif;background:var(--blanc);color:var(--anthracite);overflow-x:hidden;line-height:1.7}
a{text-decoration:none;color:inherit} ul{list-style:none} img{max-width:100%;display:block}
.container{max-width:1200px;margin:0 auto;padding:0 40px}
em{font-style:italic}
/* Scroll bar */
#scrollProgress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--or);z-index:9999;box-shadow:0 0 8px rgba(201,168,76,0.5)}
/* Réserve l'espace avant que JS injecte le contenu — élimine le footer-jump CLS */
#app-root{min-height:100vh}
/* Reveal */
/* Contenu visible sans JS (Google, connexions lentes) ; apparition au défilement seulement une fois le JS chargé */
.reveal,.reveal-right{transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
html.js-reveal .reveal:not(.visible){opacity:0;transform:translateY(20px)}
html.js-reveal .reveal-right:not(.visible){opacity:0;transform:translateX(28px)}
@media (prefers-reduced-motion:reduce){html.js-reveal .reveal,html.js-reveal .reveal-right{opacity:1!important;transform:none!important;transition:none!important}}

/* ── HEADER ───────────────────────────────────────────── */
#header{position:fixed;top:0;left:0;right:0;z-index:1000;transition:background var(--T),border-color var(--T);border-bottom:1px solid transparent}
#header.scrolled{background:rgba(8,8,8,0.97);backdrop-filter:blur(20px);border-bottom-color:rgba(255,255,255,0.05)}
.navbar{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:22px 40px;gap:24px;transition:padding var(--T)}
#header.scrolled .navbar{padding:14px 40px}
.logo-pill{background:linear-gradient(135deg,rgba(255,255,255,0.97),rgba(255,255,255,0.82));padding:5px 14px 5px 6px;border-radius:8px;display:flex;align-items:center;transition:padding var(--T)}
.logo-pill img{height:48px;width:auto;transition:height var(--T)}
#header.scrolled .logo-pill img{height:38px}
.logo-text-fallback{display:flex;align-items:center;gap:4px;font-weight:900}
.lt-sy{font-size:1.4rem;color:var(--noir)} .lt-group{font-size:1.4rem;color:var(--rouge)}
.nav-links{display:flex;align-items:center;gap:40px;margin-left:auto}
.nav-links a{font-size:0.72rem;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.5);transition:color var(--T);position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--or);transition:width var(--T)}
.nav-links a:hover,.nav-links a.active{color:var(--blanc)}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.btn-cta{border:1px solid rgba(201,168,76,0.6);color:var(--or);padding:9px 24px;font-size:0.7rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;transition:all var(--T);white-space:nowrap}
.btn-cta:hover{background:var(--or);color:var(--noir)}
.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;z-index:1001}
.menu-toggle span{display:block;width:22px;height:1px;background:var(--blanc);transition:all 0.35s}
.menu-toggle.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}
.menu-toggle.open span:nth-child(2){opacity:0}
.menu-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}

/* ── HERO ─────────────────────────────────────────────── */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding:120px 40px 80px}
.hero-bg{position:absolute;inset:0;z-index:0;
  background:radial-gradient(ellipse at 15% 50%,rgba(204,26,26,0.07) 0%,transparent 50%),
             radial-gradient(ellipse at 85% 15%,rgba(201,168,76,0.05) 0%,transparent 45%),#080808}
.hero-grid-overlay{position:absolute;inset:0;z-index:1;
  background-image:linear-gradient(rgba(255,255,255,0.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.018) 1px,transparent 1px);
  background-size:72px 72px}
.hero-content{position:relative;z-index:3;max-width:860px}
.hero-eyebrow{display:flex;align-items:center;gap:20px;margin-bottom:48px}
.hero-eyebrow p{font-size:0.65rem;font-weight:700;letter-spacing:5px;color:rgba(255,255,255,0.25);text-transform:uppercase;white-space:nowrap}
.eyebrow-line{flex:0 0 80px;height:1px;background:rgba(255,255,255,0.1)}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(3.5rem,8vw,7.5rem);line-height:0.92;margin-bottom:36px;letter-spacing:-2px}
.ht-light{display:block;font-weight:300;color:rgba(255,255,255,0.85);font-size:0.6em;letter-spacing:4px;font-family:'Montserrat',sans-serif;font-style:normal;margin-bottom:8px}
.ht-accent{display:block;font-weight:700;color:var(--rouge)}
.ht-thin{display:block;font-weight:300;font-style:italic;color:rgba(201,168,76,0.6);font-size:0.45em;letter-spacing:12px;margin-top:8px}
.hero-sub{font-size:0.95rem;color:rgba(255,255,255,0.4);margin-bottom:52px;line-height:1.9;font-family:'Open Sans',sans-serif;max-width:500px}
.hero-sub em{color:rgba(201,168,76,0.7);font-style:normal;font-weight:600}
.hero-btns{display:flex;gap:16px;flex-wrap:wrap}
.btn-presidential{display:inline-block;background:var(--rouge);color:var(--blanc);padding:14px 40px;font-size:0.72rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;border:1px solid var(--rouge);transition:all var(--T)}
.btn-presidential:hover{background:transparent;color:var(--rouge)}
.btn-ghost{display:inline-block;background:transparent;color:rgba(255,255,255,0.6);padding:14px 40px;font-size:0.72rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;border:1px solid rgba(255,255,255,0.15);transition:all var(--T)}
.btn-ghost:hover{border-color:var(--blanc);color:var(--blanc)}
.hero-scroll{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;z-index:3}
.scroll-line{width:1px;height:60px;background:linear-gradient(to bottom,transparent,rgba(255,255,255,0.3),transparent);animation:lineScroll 2.2s ease-in-out infinite}
@keyframes lineScroll{0%,100%{opacity:.3;transform:scaleY(1)}50%{opacity:1;transform:scaleY(.8)}}
.hero-scroll p{font-size:0.58rem;letter-spacing:4px;color:rgba(255,255,255,0.2);text-transform:uppercase;font-weight:700}
.hero-founder{position:absolute;bottom:40px;right:48px;display:flex;flex-direction:column;align-items:flex-end;gap:6px;z-index:3}
.hf-label{font-size:0.58rem;font-weight:700;letter-spacing:4px;color:rgba(255,255,255,0.2);text-transform:uppercase}
.hf-name{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-style:italic;color:rgba(201,168,76,0.6)}
.hf-line{width:48px;height:1px;background:rgba(201,168,76,0.25)}

/* ── CHIFFRES ─────────────────────────────────────────── */
.chiffres{padding:56px 0;border-top:1px solid rgba(255,255,255,0.05);border-bottom:1px solid rgba(255,255,255,0.05)}
.chiffres .container{display:flex;align-items:center;justify-content:center}
.chiffre-item{flex:1;text-align:center;padding:0 32px}
.chiffre-sep{width:1px;height:56px;background:rgba(255,255,255,0.06);flex-shrink:0}
.chiffre-item h3{font-size:2.8rem;font-weight:900;color:var(--rouge);line-height:1;letter-spacing:-1px}
.chiffre-item p{font-size:0.65rem;font-weight:700;letter-spacing:3px;color:rgba(255,255,255,0.25);text-transform:uppercase;margin-top:10px}

/* ── VISION ───────────────────────────────────────────── */
.vision{padding:130px 0}
.vision-inner{display:grid;grid-template-columns:1fr 1.3fr;gap:100px;align-items:start;margin-bottom:80px}
.section-pre{font-size:0.65rem;font-weight:700;letter-spacing:5px;color:var(--rouge);text-transform:uppercase;margin-bottom:20px;display:block}
.vision-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:600;line-height:1.2;color:var(--blanc)}
.vision-title em{font-style:italic;color:var(--or)}
.vision-right p{font-family:'Open Sans',sans-serif;color:rgba(255,255,255,0.5);margin-bottom:22px;font-size:0.92rem;line-height:1.95}
.vision-right p strong{color:var(--blanc)}
.vision-signature{margin-top:36px;padding-top:24px;border-top:1px solid rgba(255,255,255,0.07)}
.vs-name{display:block;font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-style:italic;color:rgba(201,168,76,0.7);margin-bottom:4px}
.vs-title{display:block;font-size:0.62rem;font-weight:700;letter-spacing:2px;color:rgba(255,255,255,0.25);text-transform:uppercase}
/* Timeline */
.vision-timeline{display:flex;align-items:center;padding:40px 0;border-top:1px solid rgba(255,255,255,0.06);overflow-x:auto;gap:0}
.vt-item{flex-shrink:0;text-align:center;min-width:130px}
.vt-dot{width:10px;height:10px;border-radius:50%;background:var(--rouge);margin:0 auto 14px;box-shadow:0 0 10px rgba(204,26,26,0.5)}
.vt-dot-future{background:transparent;border:1px solid rgba(201,168,76,0.5);box-shadow:0 0 10px rgba(201,168,76,0.2)}
.vt-year{font-size:0.72rem;font-weight:700;letter-spacing:2px;color:var(--rouge);margin-bottom:6px}
.vt-future .vt-year{color:var(--or)}
.vt-label{font-size:0.7rem;color:rgba(255,255,255,0.35);line-height:1.5}
.vt-line{flex:1;height:1px;background:rgba(255,255,255,0.08)}
.vt-dashed{background:none;border-top:1px dashed rgba(201,168,76,0.2)}

/* ── ÉCOSYSTÈME ───────────────────────────────────────── */
.ecosysteme{padding:130px 0;background:#0a0a0a}
.section-header{text-align:center;margin-bottom:64px}
.section-header h2,.section-header h1{font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;color:var(--blanc);margin-bottom:12px;font-family:'Cormorant Garamond',serif;font-weight:600}
.section-desc{font-size:0.85rem;color:rgba(255,255,255,0.3);font-family:'Open Sans',sans-serif}
.eco-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.eco-card{position:relative;padding:52px 40px;background:#0e0e0e;overflow:hidden;transition:background var(--T);display:block;cursor:pointer}
.eco-card:hover{background:#141414}
.eco-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--rouge);transform:scaleX(0);transition:transform .45s ease;transform-origin:left}
.eco-card:hover::before{transform:scaleX(1)}
.eco-innovation::before{background:var(--or)}
.eco-number{font-family:'Cormorant Garamond',serif;font-size:6rem;font-weight:700;color:rgba(255,255,255,0.03);position:absolute;top:16px;right:28px;line-height:1}
.eco-icon{font-size:2.4rem;margin-bottom:24px;display:block}
.eco-card h3{font-size:1.2rem;font-weight:700;color:var(--blanc);margin-bottom:14px;letter-spacing:1px}
.eco-card p{font-size:0.83rem;color:rgba(255,255,255,0.38);line-height:1.85;margin-bottom:28px;font-family:'Open Sans',sans-serif}
.eco-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}
.eco-tags span{font-size:0.62rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.2);border:1px solid rgba(255,255,255,0.08);padding:4px 10px}
.eco-link{font-size:0.68rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--rouge);transition:color var(--T);display:flex;align-items:center;gap:8px}
.eco-link span{transition:transform var(--T);display:inline-block}
.eco-card:hover .eco-link span{transform:translateX(6px)}
.eco-card:hover .eco-link{color:var(--blanc)}
.eco-soon{color:rgba(201,168,76,0.5)!important}
.eco-innovation{cursor:default}

/* ── VALEURS ──────────────────────────────────────────── */
.valeurs{padding:130px 0}
.valeurs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;border:1px solid rgba(255,255,255,0.04)}
.valeur-card{padding:52px 32px;background:#0a0a0a;transition:background var(--T)}
.valeur-card:hover{background:#101010}
.vc-symbol{font-family:'Cormorant Garamond',serif;font-size:5rem;font-weight:700;color:rgba(204,26,26,0.1);line-height:1;margin-bottom:24px;transition:color var(--T)}
.valeur-card:hover .vc-symbol{color:rgba(204,26,26,0.25)}
.valeur-card h3{font-size:0.85rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--blanc);margin-bottom:16px}
.valeur-card p{font-size:0.8rem;color:rgba(255,255,255,0.38);line-height:1.85;font-family:'Open Sans',sans-serif}

/* ── CONTACT CORPORATE ────────────────────────────────── */
.contact-corporate{padding:130px 0;background:#060606;border-top:1px solid rgba(255,255,255,0.04)}
.cc-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}
.cc-left h2,.cc-left h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3rem);font-weight:600;color:var(--blanc);line-height:1.2;margin-bottom:20px}
.cc-left>p{font-family:'Open Sans',sans-serif;font-size:0.88rem;color:rgba(255,255,255,0.4);line-height:1.9;margin-bottom:44px}
.cc-contacts{display:flex;flex-direction:column;gap:24px}
.cc-item{padding-left:16px;border-left:1px solid var(--rouge)}
.cc-item span{display:block;font-size:0.62rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.25);margin-bottom:4px}
.cc-item strong{font-size:0.88rem;color:var(--blanc)}
/* Formulaire */
.cc-form,.float-label{position:relative}
.cc-form{display:flex;flex-direction:column;gap:20px}
.float-label input,.float-label textarea{width:100%;padding:20px 16px 8px;background:rgba(255,255,255,0.06);border:1px solid #D4AF7A;color:#D4AF7A;font-family:'Montserrat',sans-serif;font-size:0.85rem;outline:none;transition:border-color var(--T),box-shadow var(--T);-webkit-appearance:none;border-radius:6px}
.float-label input::placeholder,.float-label textarea::placeholder{color:rgba(212,175,122,0.45)}
.float-label input:focus,.float-label textarea:focus{border-color:#D4AF7A;background:rgba(212,175,122,0.05);box-shadow:0 0 0 2px rgba(212,175,122,0.2)}
.float-label label{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:0.72rem;font-weight:600;letter-spacing:1px;color:rgba(212,175,122,0.55);transition:all .25s;pointer-events:none}
.float-label textarea~label{top:18px;transform:none}
.float-label input:focus~label,.float-label input:not(:placeholder-shown)~label,
.float-label textarea:focus~label,.float-label textarea:not(:placeholder-shown)~label{top:7px;transform:none;font-size:0.58rem;letter-spacing:2.5px;color:#D4AF7A;text-transform:uppercase}
.float-label textarea{padding-top:26px;resize:vertical;min-height:120px}
.btn-full-pres{width:100%;text-align:center;font-family:'Montserrat',sans-serif;cursor:pointer}
.form-message{padding:12px 16px;font-size:0.8rem;font-weight:600;display:none;border-left:2px solid;font-family:'Open Sans',sans-serif}
.form-message.success{background:rgba(46,125,50,0.08);color:#81c784;border-color:#4caf50;display:block}
.form-message.error{background:rgba(198,40,40,0.08);color:#ef9a9a;border-color:#f44336;display:block}

/* ── FOOTER ───────────────────────────────────────────── */
.footer{background:#040404;padding:64px 0 0;border-top:1px solid rgba(255,255,255,0.04)}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,0.04)}
.logo-pill-sm{background:linear-gradient(135deg,rgba(255,255,255,0.96),rgba(255,255,255,0.8));padding:4px 12px 4px 5px;border-radius:7px;display:inline-flex;align-items:center;margin-bottom:16px}
.logo-pill-sm img{height:40px;width:auto}
.ft-tagline{font-size:0.62rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.18)}
.ft-founder{font-family:'Cormorant Garamond',serif;font-style:italic;color:rgba(201,168,76,0.4);font-size:0.9rem;margin-top:6px}
.ft-eco,.ft-contact{display:flex;flex-direction:column;gap:10px}
.ft-eco h4,.ft-contact h4{font-size:0.62rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.18);margin-bottom:8px}
.ft-eco a{font-size:0.8rem;color:rgba(255,255,255,0.32);transition:color var(--T);letter-spacing:.5px}
.ft-eco a:hover{color:var(--rouge)}
.ft-soon{font-size:0.8rem;color:rgba(201,168,76,0.25)}
.ft-contact p{font-size:0.8rem;color:rgba(255,255,255,0.28);font-family:'Open Sans',sans-serif}
.footer-bottom{text-align:center;padding:20px 0}
.footer-bottom p{font-size:0.68rem;color:rgba(255,255,255,0.12);letter-spacing:1.5px}

/* ── WHATSAPP & BACK-TO-TOP ───────────────────────────── */
.wa-wrapper{position:fixed;bottom:28px;right:28px;z-index:999;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.wa-bubble{background:#fff;border-radius:12px 12px 2px 12px;padding:14px 18px;box-shadow:0 8px 32px rgba(0,0,0,0.5);max-width:230px;position:relative;opacity:0;transform:translateY(10px) scale(.94);pointer-events:none;transition:all .4s ease;border-bottom:3px solid #25D366}
.wa-bubble.visible{opacity:1;transform:none;pointer-events:all}
.wa-bubble::after{content:'';position:absolute;bottom:-8px;right:16px;width:0;height:0;border-left:8px solid transparent;border-top:8px solid #25D366}
.wa-bubble-close{position:absolute;top:-8px;right:-8px;width:22px;height:22px;background:var(--noir);color:#fff;border:none;border-radius:50%;font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--T)}
.wa-bubble-close:hover{background:var(--rouge)}
.wa-bubble-text{font-size:.82rem;color:#333;margin-bottom:4px;font-family:'Open Sans',sans-serif}
.wa-bubble strong{font-size:.85rem;color:#128C7E;font-family:'Montserrat',sans-serif}
.whatsapp-float{width:56px;height:56px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,0.4);transition:transform var(--T),box-shadow var(--T);flex-shrink:0;position:relative}
.whatsapp-float::before{content:'';position:absolute;inset:0;border-radius:50%;background:rgba(37,211,102,0.45);animation:waPulse 3s ease-out infinite;will-change:transform,opacity}
.whatsapp-float svg{width:28px;height:28px;position:relative;z-index:1}
.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 8px 30px rgba(37,211,102,0.55)}
.whatsapp-float:hover::before{animation:none}
@keyframes waPulse{0%{transform:scale(1);opacity:.45}70%{transform:scale(1.75);opacity:0}100%{transform:scale(1.75);opacity:0}}
.back-to-top{position:fixed;bottom:96px;right:28px;z-index:998;width:40px;height:40px;background:rgba(255,255,255,0.06);color:#fff;border:1px solid rgba(255,255,255,0.1);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(10px);pointer-events:none;transition:all var(--T)}
.back-to-top svg{width:16px;height:16px}
.back-to-top.visible{opacity:1;transform:none;pointer-events:all}
.back-to-top:hover{background:var(--rouge);border-color:var(--rouge)}

/* ── PORTRAIT FONDATRICE ─────────────────────────────── */
.fondatrice{padding:100px 0;background:#050505;position:relative}
.fondatrice::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--or),transparent)}
.fondatrice-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}
.fondatrice-photo{position:relative;border-radius:3px;overflow:hidden;box-shadow:0 40px 80px rgba(0,0,0,0.6)}
.fondatrice-photo img{width:100%;height:580px;object-fit:cover;object-position:top center;display:block;filter:grayscale(15%) contrast(1.05);transition:filter .6s ease}
.fondatrice-photo:hover img{filter:grayscale(0%) contrast(1.05)}
.fondatrice-photo::after{content:'';position:absolute;bottom:0;left:0;right:0;height:35%;background:linear-gradient(to top,rgba(5,5,5,0.85),transparent);pointer-events:none}
.fondatrice-caption{position:absolute;bottom:20px;left:24px;right:24px;z-index:2;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:0.85rem;color:rgba(201,168,76,0.75);letter-spacing:1px}
.fondatrice-text .section-pre{justify-content:flex-start}
.fondatrice-text .section-pre::before{display:none}
.fondatrice-quote{font-family:'Cormorant Garamond',serif;font-size:clamp(1.5rem,2.5vw,2rem);font-style:italic;color:rgba(255,255,255,0.92);line-height:1.5;margin:24px 0 28px;padding-left:24px;border-left:2px solid var(--or)}
.fondatrice-name{font-family:'Montserrat',sans-serif;font-size:0.72rem;font-weight:700;letter-spacing:3px;color:var(--or);text-transform:uppercase;margin-bottom:16px}
.fondatrice-legend{color:rgba(255,255,255,0.55);font-size:0.95rem;line-height:1.9;font-family:'Open Sans',sans-serif}

/* ── CONTACT — MAIL CLIQUABLE ────────────────────────── */
.cc-mail{color:var(--or);font-weight:600;text-decoration:none;font-size:0.88rem;transition:color var(--T);letter-spacing:.3px}
.cc-mail:hover{color:#fff;text-decoration:underline}
.cc-item strong{font-size:0.88rem}

/* ── FOOTER PHONE ────────────────────────────────────── */
.footer-phone{margin-bottom:8px}
.footer-phone a{color:rgba(201,168,76,0.6);font-size:0.8rem;letter-spacing:2px;text-decoration:none;transition:color var(--T)}
.footer-phone a:hover{color:var(--or)}

/* ── MICRO-ANIMATIONS : boutons & interactions ──────── */
.btn-presidential{transition:all var(--T),transform 0.12s ease}
.btn-presidential:active{transform:scale(0.97);opacity:.9}
.btn-ghost{transition:all var(--T),transform 0.12s ease}
.btn-ghost:active{transform:scale(0.97)}
.btn-cta{transition:all var(--T),transform 0.12s ease}
.btn-cta:active{transform:scale(0.95)}
.btn-lang{transition:all var(--T),transform 0.12s ease}
.btn-lang:active{transform:scale(0.93);opacity:.8}
.whatsapp-float:active{transform:scale(0.96)}
/* Logo hover */
.nav-logo .logo-pill{transition:transform 0.3s ease,box-shadow 0.3s ease}
.nav-logo:hover .logo-pill{transform:scale(1.04);box-shadow:0 4px 16px rgba(0,0,0,0.15)}
/* Eco cards — légère élévation */
.eco-card{transition:background var(--T),transform 0.35s ease,box-shadow 0.35s ease}
.eco-card:hover:not(.eco-innovation){transform:translateY(-4px);box-shadow:0 24px 60px rgba(0,0,0,0.35)}
/* Valeur cards — subtil */
.valeur-card{transition:background var(--T),transform 0.3s ease}
.valeur-card:hover{transform:translateY(-2px)}

/* ── BOUTON LANGUE ───────────────────────────────────── */
.btn-lang{background:transparent;border:1px solid rgba(255,255,255,0.12);color:rgba(255,255,255,0.45);padding:7px 13px;font-size:0.68rem;font-weight:700;letter-spacing:1px;cursor:pointer;transition:all var(--T);font-family:'Montserrat',sans-serif;flex-shrink:0;line-height:1}
.btn-lang:hover{border-color:rgba(201,168,76,0.5);color:var(--or)}

/* ── FOOTER SOCIAL ───────────────────────────────────── */
.ft-social{display:flex;gap:10px;margin-top:14px}
.ft-social-link{width:34px;height:34px;border:1px solid rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.28);transition:all var(--T)}
.ft-social-link:hover{border-color:#1877F2;color:#1877F2;background:rgba(24,119,242,0.08)}

/* ── FOOTER LEGAL LINK ───────────────────────────────── */
.ft-legal-link{color:rgba(255,255,255,0.2);font-size:0.68rem;letter-spacing:1px;transition:color var(--T)}
.ft-legal-link:hover{color:var(--or)}

/* ── ÉCO-LINK : seule la flèche anime ───────────────── */
.eco-link span{display:inline-block;transition:none}
.eco-arrow{transition:transform var(--T) !important}
.eco-card:hover .eco-link span{transform:none}
.eco-card:hover .eco-arrow{transform:translateX(6px)}

/* ── BANNIÈRE COOKIE RGPD ────────────────────────────── */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9998;background:rgba(8,8,8,0.97);border-top:1px solid rgba(255,255,255,0.07);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 40px;opacity:0;transform:translateY(100%);pointer-events:none;transition:opacity .5s ease,transform .5s ease}
.cookie-banner.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.cookie-content p{font-family:'Open Sans',sans-serif;font-size:0.8rem;color:rgba(255,255,255,0.45);line-height:1.75;max-width:640px}
.cookie-btns{display:flex;gap:10px;flex-shrink:0}
.cookie-btn-accept{background:var(--or);color:var(--noir);border:none;padding:9px 20px;font-family:'Montserrat',sans-serif;font-size:0.7rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:opacity var(--T)}
.cookie-btn-accept:hover{opacity:.85}
.cookie-btn-decline{background:transparent;color:rgba(255,255,255,0.3);border:1px solid rgba(255,255,255,0.12);padding:9px 16px;font-family:'Montserrat',sans-serif;font-size:0.7rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all var(--T)}
.cookie-btn-decline:hover{border-color:rgba(255,255,255,0.3);color:rgba(255,255,255,0.6)}

/* ══════════════════════════════════════════════════════
   4B — HEADER BLANC CORPORATE
   ══════════════════════════════════════════════════════ */
.header-white{position:fixed;top:0;left:0;right:0;z-index:1000;background:#ffffff;border-bottom:1px solid var(--bordure);transition:background var(--T),box-shadow var(--T)}
.header-white.scrolled{box-shadow:0 2px 12px rgba(0,0,0,0.08)}
.navbar-corporate{display:flex;align-items:center;max-width:1200px;margin:0 auto;padding:0 40px;height:64px;gap:0}
.logo-corporate-wrap{height:44px;display:flex;align-items:center;margin-right:2rem}
.logo-corporate-wrap img{height:44px;width:auto}
.navbar-corporate .nav-links{display:flex;align-items:stretch;gap:0;margin:0;height:64px;flex:1}
.navbar-corporate .nav-links a{font-size:0.68rem;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--gris);padding:0 14px;height:64px;display:flex;align-items:center;border-bottom:2px solid transparent;transition:color var(--T),border-color var(--T);white-space:nowrap}
.navbar-corporate .nav-links a:hover,.navbar-corporate .nav-links a.active{color:var(--anthracite);border-bottom-color:var(--rouge)}
.navbar-corporate .nav-links a::after{display:none}
.nav-right-group{display:flex;align-items:center;gap:8px;margin-left:1rem}
.btn-b2b{font-size:0.68rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--anthracite);border:1px solid var(--anthracite);border-radius:3px;padding:7px 14px;transition:background var(--T),color var(--T)}
.btn-b2b:hover{background:var(--anthracite);color:#fff}
.navbar-corporate .btn-cta{background:var(--rouge);color:#fff;font-size:0.68rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;padding:8px 16px;border-radius:3px;border:none}
.navbar-corporate .btn-cta:hover{background:#a80000}

/* ══════════════════════════════════════════════════════
   4C — BANDE CERTIFICATIONS
   ══════════════════════════════════════════════════════ */
.certif-strip{background:#fff;border-bottom:1px solid var(--bordure);display:flex;align-items:stretch;min-height:68px}
.certif-item{display:flex;align-items:center;gap:14px;padding:1rem 2rem;border-right:1px solid var(--bordure);flex:1}
.certif-item:last-child{border-right:none}
.certif-logo{height:36px;width:auto;max-width:60px;object-fit:contain;flex-shrink:0}
.certif-logo-number{width:36px;height:36px;border-radius:50%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:var(--anthracite);flex-shrink:0}
.certif-text-label{font-size:0.6rem;letter-spacing:0.1em;color:var(--gris);text-transform:uppercase;margin-bottom:2px;font-family:'Montserrat',sans-serif}
.certif-text-val{font-size:0.75rem;font-weight:600;color:var(--anthracite);font-family:'Montserrat',sans-serif;line-height:1.3}
.certif-text-sub{font-size:0.65rem;color:var(--gris);margin-top:1px;font-family:'Montserrat',sans-serif}

/* ══════════════════════════════════════════════════════
   4D — SECTIONS FOND ALBÂTRE
   ══════════════════════════════════════════════════════ */
.section-albâtre{background:#FAFAF8;padding:4rem 0}
.section-blanc{background:#ffffff;padding:4rem 0}
.section-dark{background:#1C1C1C;padding:4rem 0}
.section-pre-corporate{font-family:'Montserrat',sans-serif;font-size:0.6rem;font-weight:700;letter-spacing:0.3em;color:var(--rouge);text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:12px}
.section-pre-corporate .spc-line{width:28px;height:1px;background:var(--rouge);flex-shrink:0}
.section-pre-corporate.gold-pre{color:var(--or)}
.section-pre-corporate.gold-pre .spc-line{background:var(--or)}
.section-pre.gold-pre{color:var(--or)}
.section-title-corporate{font-family:'Cormorant Garamond',serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:400;color:var(--anthracite);line-height:1.3}
.section-title-corporate em{color:var(--rouge);font-style:italic}

/* ══════════════════════════════════════════════════════
   4E — CARDS ÉCOSYSTÈME CORPORATE
   ══════════════════════════════════════════════════════ */
.eco-duo-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}
.eco-card-corporate{background:#fff;border:0.5px solid var(--bordure);border-radius:10px;overflow:hidden;transition:transform 0.2s ease,box-shadow 0.2s ease;display:block}
.eco-card-corporate:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.06)}
.eco-card-bar{height:4px}
.eco-card-bar.bar-travels{background:linear-gradient(90deg,var(--anthracite) 40%,var(--rouge))}
.eco-card-bar.bar-insurances{background:linear-gradient(90deg,var(--anthracite) 40%,var(--or-dark))}
.eco-card-bar.bar-innov{background:var(--bordure)}
.eco-card-body{padding:1.5rem}
.eco-card-icon{width:44px;height:44px;border-radius:8px;background:#FAFAF8;border:0.5px solid var(--bordure);display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:1rem}
.eco-card-label{font-size:0.62rem;font-weight:700;letter-spacing:0.18em;color:var(--rouge);text-transform:uppercase;margin-bottom:6px;font-family:'Montserrat',sans-serif}
.eco-card-label.gold{color:var(--or-dark)}
.eco-card-title{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:400;color:var(--anthracite);margin-bottom:10px}
.eco-card-desc{font-size:0.8rem;color:var(--gris);line-height:1.8;font-family:'Open Sans',sans-serif}
.eco-card-footer{padding:0.9rem 1.5rem;border-top:0.5px solid var(--bordure);display:flex;align-items:center;justify-content:space-between}
.eco-card-link{font-size:0.7rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--anthracite);display:flex;align-items:center;gap:6px;transition:color var(--T)}
.eco-card-link:hover{color:var(--rouge)}
.eco-card-link .arrow{color:var(--rouge)}
.eco-card-pill{font-size:0.62rem;color:var(--gris);border:0.5px solid var(--bordure);padding:2px 10px;border-radius:20px;background:#FAFAF8;font-family:'Montserrat',sans-serif}
.eco-innov-header{border-top:0.5px solid var(--bordure);padding-top:1.5rem;margin-bottom:1rem}
.eco-innov-label{font-size:0.62rem;letter-spacing:0.2em;color:var(--gris);text-transform:uppercase;font-family:'Montserrat',sans-serif;font-weight:600}
.eco-innov-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.eco-innov-card{background:#fff;border:0.5px solid var(--bordure);border-radius:10px;padding:1.5rem;text-align:center}
.eco-innov-icon{font-size:1.4rem;display:block;margin-bottom:10px}
.eco-innov-card h4{font-family:'Cormorant Garamond',serif;font-size:1rem;color:var(--anthracite);margin-bottom:8px;font-weight:400}
.eco-innov-card p{font-size:0.75rem;color:var(--gris);line-height:1.7;font-family:'Open Sans',sans-serif}
.eco-soon{display:inline-block;font-size:0.6rem;color:var(--gris);border:0.5px solid var(--bordure);padding:2px 10px;border-radius:20px;margin-top:10px;font-family:'Montserrat',sans-serif}

/* ══════════════════════════════════════════════════════
   4F — SECTION ACTUALITÉS
   ══════════════════════════════════════════════════════ */
.actu-section{position:relative;padding:4rem 0;overflow:hidden;background:#FAFAF8}
.actu-bg-press{position:absolute;inset:0;z-index:0;opacity:0.045;pointer-events:none;width:100%;height:100%}
.actu-overlay{position:absolute;inset:0;z-index:1;background:#FAFAF8;opacity:0.84}
.actu-content{position:relative;z-index:2}
.actu-card{background:#fff;border:0.5px solid var(--bordure);border-radius:10px;overflow:hidden;transition:transform 0.2s ease}
.actu-card:hover{transform:translateY(-2px)}
.actu-card-top{height:72px;display:flex;align-items:center;justify-content:center}
.actu-card-tag{font-size:0.58rem;letter-spacing:0.2em;color:var(--or);border:0.5px solid rgba(212,175,122,0.4);padding:3px 10px;border-radius:20px;font-family:'Montserrat',sans-serif;text-transform:uppercase}
.actu-card-body{padding:1rem 1.25rem}
.actu-card-date{font-size:0.65rem;color:var(--gris);margin-bottom:6px;font-family:'Montserrat',sans-serif}
.actu-card-title{font-family:'Cormorant Garamond',serif;font-size:0.95rem;color:var(--anthracite);line-height:1.5}
.actu-featured{background:#fff;border:0.5px solid var(--bordure);border-radius:10px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;margin-bottom:1.5rem}
.actu-feat-visual{background:var(--anthracite);display:flex;align-items:center;justify-content:center;min-height:130px;position:relative;overflow:hidden}
.actu-feat-body{padding:1.5rem;display:flex;flex-direction:column;justify-content:center}
.actu-feat-kicker{font-size:0.62rem;letter-spacing:0.2em;color:var(--rouge);text-transform:uppercase;font-family:'Montserrat',sans-serif;font-weight:600;margin-bottom:8px}
.actu-feat-title{font-family:'Cormorant Garamond',serif;font-size:1.1rem;color:var(--anthracite);line-height:1.4}
.actu-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}

/* ══════════════════════════════════════════════════════
   4G — SECTION CARRIÈRES
   ══════════════════════════════════════════════════════ */
.careers-hero{background:var(--anthracite);border-radius:10px;padding:2.5rem;margin-bottom:2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.careers-hero h2,.careers-hero h1{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:400;color:#fff;margin-bottom:0.75rem}
.careers-hero p{font-size:0.8rem;color:rgba(255,255,255,0.4);line-height:1.8;font-family:'Open Sans',sans-serif}
.careers-stat{background:rgba(255,255,255,0.05);border:0.5px solid rgba(255,255,255,0.1);border-radius:8px;padding:14px 20px;text-align:center;min-width:90px}
.careers-stat-n{font-family:'Cormorant Garamond',serif;font-size:1.4rem;color:var(--or)}
.careers-stat-l{font-size:0.58rem;letter-spacing:0.1em;color:rgba(255,255,255,0.3);text-transform:uppercase;margin-top:3px;font-family:'Montserrat',sans-serif}
.jobs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin:1.5rem 0 1rem}
.job-card{background:#fff;border:0.5px solid var(--bordure);border-radius:10px;padding:1.5rem;transition:transform 0.2s ease}
.job-card:hover{transform:translateY(-2px)}
.job-dept{font-size:0.62rem;letter-spacing:0.15em;color:var(--rouge);text-transform:uppercase;font-weight:600;margin-bottom:8px;font-family:'Montserrat',sans-serif}
.job-title{font-family:'Cormorant Garamond',serif;font-size:1.05rem;color:var(--anthracite);margin-bottom:10px}
.job-tag{display:inline-block;font-size:0.6rem;color:var(--gris);border:0.5px solid var(--bordure);padding:2px 8px;border-radius:20px;background:#FAFAF8;margin:0 3px 4px 0;font-family:'Montserrat',sans-serif}
.job-cta{font-size:0.68rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--rouge);cursor:pointer;font-family:'Montserrat',sans-serif;background:none;border:none;padding:12px 0;min-height:44px;margin-top:2px}
.candidature-spont{background:#fff;border:0.5px solid var(--bordure);border-radius:10px;padding:1.5rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.candidature-spont strong{font-family:'Cormorant Garamond',serif;font-size:1rem;color:var(--anthracite);display:block;margin-bottom:4px}
.candidature-spont p{font-size:0.8rem;color:var(--gris);font-family:'Open Sans',sans-serif}

/* ══════════════════════════════════════════════════════
   4H — SECTION B2B
   ══════════════════════════════════════════════════════ */
.b2b-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}
.b2b-offer{display:flex;align-items:flex-start;gap:12px;background:rgba(255,255,255,0.04);border:0.5px solid rgba(255,255,255,0.08);border-radius:8px;padding:12px 14px;margin-bottom:10px}
.b2b-offer-dot{width:6px;height:6px;border-radius:50%;background:var(--rouge);margin-top:5px;flex-shrink:0}
.b2b-offer strong{font-size:0.78rem;color:#fff;display:block;margin-bottom:3px;font-family:'Montserrat',sans-serif}
.b2b-offer p{font-size:0.72rem;color:rgba(255,255,255,0.35);line-height:1.5;font-family:'Open Sans',sans-serif}
.form-corporate{background:#fff;border:0.5px solid var(--bordure);border-radius:10px;padding:1.75rem;display:flex;flex-direction:column;gap:14px}
.form-corporate label{font-size:0.62rem;letter-spacing:0.1em;color:var(--gris);text-transform:uppercase;display:block;margin-bottom:4px;font-family:'Montserrat',sans-serif;font-weight:600}
.form-corporate input,.form-corporate select,.form-corporate textarea{width:100%;background:#FAFAF8;border:0.5px solid var(--bordure);border-radius:5px;padding:10px 14px;font-family:'Open Sans',sans-serif;font-size:0.85rem;color:var(--anthracite);outline:none;transition:border-color var(--T)}
.form-corporate input:focus,.form-corporate select:focus,.form-corporate textarea:focus{border-color:var(--rouge)}
.form-corporate textarea{min-height:90px;resize:vertical}
.field-autre{display:none;margin-top:8px}
.field-autre.visible{display:block}

/* ══════════════════════════════════════════════════════
   4I — FOOTER CORPORATE
   ══════════════════════════════════════════════════════ */
.footer-corporate{background:#111;padding:3rem 0 0}
.footer-top-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:2.5rem;border-bottom:0.5px solid rgba(255,255,255,0.07)}
.footer-brand-tagline{font-size:0.7rem;letter-spacing:0.08em;color:rgba(255,255,255,0.3);margin-top:10px;line-height:1.6;font-family:'Montserrat',sans-serif}
.footer-brand-founder{font-family:'Cormorant Garamond',serif;font-style:italic;color:rgba(212,175,122,0.5);font-size:0.9rem;margin-top:6px}
.footer-col-title{font-size:0.6rem;font-weight:700;letter-spacing:0.2em;color:rgba(255,255,255,0.22);text-transform:uppercase;margin-bottom:14px;padding-bottom:8px;border-bottom:0.5px solid rgba(255,255,255,0.06);font-family:'Montserrat',sans-serif}
.footer-col a,.footer-col span{display:block;font-size:0.78rem;color:rgba(255,255,255,0.38);text-decoration:none;margin-bottom:8px;transition:color var(--T);cursor:pointer;font-family:'Open Sans',sans-serif}
.footer-col a:hover{color:rgba(255,255,255,0.8)}
.footer-col .ft-soon{color:rgba(255,255,255,0.18);font-style:italic}
.footer-bottom-bar{padding:1.25rem 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.footer-copyright{font-size:0.65rem;color:rgba(255,255,255,0.16);letter-spacing:0.04em;font-family:'Montserrat',sans-serif}
.footer-legal-links{display:flex;gap:0;flex-wrap:wrap}
.footer-legal-links a{font-size:0.65rem;color:rgba(255,255,255,0.22);text-decoration:none;padding:0 10px;border-right:0.5px solid rgba(255,255,255,0.1);font-family:'Montserrat',sans-serif}
.footer-legal-links a:last-child{border-right:none}
.footer-red-bar{height:2px;background:var(--rouge)}

/* ══════════════════════════════════════════════════════
   CHIFFRES LIGHT + VISION LIGHT (Module 5)
   ══════════════════════════════════════════════════════ */
.chiffres-light{background:#FAFAF8;border-top:1px solid var(--bordure);border-bottom:1px solid var(--bordure)}
.chiffres-light .chiffre-item h3{color:var(--anthracite)}
.chiffres-light .chiffre-item h3 span{color:var(--rouge)}
.chiffres-light .chiffre-item p{color:var(--gris)}
.chiffres-light .chiffre-sep{background:var(--bordure)}
.vision-light{background:#FAFAF8}
.vision-light .section-pre{color:var(--rouge)}
.vision-light .vision-title,.vision-light h2{color:var(--anthracite)}
.vision-light p{color:var(--gris)}
.vision-light .vision-signature .vs-name{color:var(--anthracite)}

/* ══════════════════════════════════════════════════════
   LISIBILITÉ — corrections texte blanc sur fonds clairs
   ══════════════════════════════════════════════════════ */

/* Titres h2 de section sur fonds albâtre / blanc / actu */
.section-albâtre .section-header h2,.section-albâtre .section-header h1,
.actu-section .section-header h2,.actu-section .section-header h1,
.valeurs .section-header h2,.valeurs .section-header h1 {
    color: var(--or);
}

/* Descriptions sous-titre sur fonds clairs */
.section-albâtre .section-desc,
.actu-section .section-desc {
    color: var(--gris);
}

/* Vision light — overrides manquants */
.vision-light .vs-title { color: var(--gris); }
.vision-light .vision-right p strong { color: var(--anthracite); }
.vision-light .vt-label { color: var(--gris); }
.vision-light .vt-line { background: var(--bordure); }
.vision-light .vt-dashed { background: none; border-top-color: rgba(212,175,122,0.3); }

/* ══════════════════════════════════════════════════════
   RESPONSIVE — Tablette (≤1024px)
   ══════════════════════════════════════════════════════ */
@media(max-width:1024px){
  .eco-grid{grid-template-columns:1fr 1fr}
  .valeurs-grid{grid-template-columns:1fr 1fr}
  .vision-inner{gap:56px}
  .fondatrice-inner{gap:56px}
  .cc-inner{gap:64px}
  .footer-top{grid-template-columns:1fr 1fr}
}

/* ══════════════════════════════════════════════════════
   RESPONSIVE — Mobile (≤768px)
   ══════════════════════════════════════════════════════ */
@media(max-width:768px){
  /* ─ Conteneur global ─ */
  .container{padding:0 20px}

  /* ─ Header / Nav ─ */
  .navbar{padding:16px 20px;gap:12px}
  #header.scrolled .navbar{padding:12px 20px}
  .logo-pill img{height:40px}
  #header.scrolled .logo-pill img{height:34px}
  .nav-links,.btn-cta{display:none}
  .menu-toggle{display:flex}
  .btn-lang{padding:6px 10px;font-size:0.62rem;letter-spacing:0.5px}
  .nav-links.open{display:flex;flex-direction:column;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(6,6,6,0.98);backdrop-filter:blur(20px);justify-content:center;align-items:center;gap:28px;z-index:999}
  .nav-links.open a{font-size:1rem;color:rgba(255,255,255,0.82);letter-spacing:3px}

  /* ─ Hero ─ */
  .hero{padding:88px 20px 64px;min-height:100svh}
  .hero-founder,.hero-scroll{display:none}
  .hero-content{width:100%;min-width:0}
  .hero-eyebrow{margin-bottom:32px;gap:10px}
  .eyebrow-line{flex:0 0 20px}
  .hero-eyebrow p{white-space:normal;letter-spacing:2px;font-size:0.6rem}
  .hero-eyebrow .eyebrow-line:last-child{display:none}
  .hero-title{font-size:clamp(2.6rem,11vw,3.8rem);margin-bottom:20px;letter-spacing:-1px}
  .hero-sub{font-size:0.88rem;margin-bottom:32px;max-width:100%}
  .hero-btns{gap:12px}

  /* ─ Chiffres ─ */
  .chiffres{padding:40px 0}
  .chiffres .container{flex-wrap:wrap;gap:24px;justify-content:center}
  .chiffre-sep{display:none}
  .chiffre-item{flex:0 0 46%;padding:0 12px;text-align:center}
  .chiffre-item h3{font-size:2rem}

  /* ─ Sections — espacement réduit ─ */
  .vision{padding:72px 0}
  .fondatrice{padding:72px 0}
  .ecosysteme{padding:72px 0}
  .valeurs{padding:72px 0}
  .contact-corporate{padding:72px 0}

  /* ─ Vision ─ */
  .vision-inner{grid-template-columns:1fr;gap:36px}
  .vision-timeline{padding:28px 0;gap:0}
  .vt-item{min-width:90px}
  .vt-label{font-size:0.65rem}

  /* ─ Fondatrice ─ */
  .fondatrice-inner{grid-template-columns:1fr;gap:32px}
  .fondatrice-photo img{height:320px}
  .fondatrice-quote{font-size:1.25rem;padding-left:16px}

  /* ─ Écosystème ─ */
  .eco-grid,.valeurs-grid{grid-template-columns:1fr}
  .eco-card{padding:36px 24px}
  .eco-number{font-size:4rem;top:12px;right:20px}
  .section-header{margin-bottom:48px}

  /* ─ Valeurs ─ */
  .valeur-card{padding:36px 24px}
  .vc-symbol{font-size:3.5rem}

  /* ─ Contact ─ */
  .cc-inner{grid-template-columns:1fr;gap:44px}
  .cc-left h2,  .cc-left h1{font-size:clamp(1.6rem,6vw,2.4rem)}
  .cc-contacts{gap:20px}

  /* ─ Footer ─ */
  .footer{padding:48px 0 0}
  .footer-top{grid-template-columns:1fr;gap:36px}
  .footer-bottom{padding:16px 0}

  /* ─ Cookie ─ */
  .cookie-banner{flex-direction:column;align-items:flex-start;padding:16px 20px;gap:12px}
  .cookie-btns{width:100%}
  .cookie-btn-accept{flex:1;text-align:center}

  /* ─ WA + BackToTop ─ */
  .wa-wrapper{bottom:20px;right:16px}
  .back-to-top{bottom:84px;right:16px}
}

/* ══════════════════════════════════════════════════════
   RESPONSIVE — Petits téléphones (≤480px)
   ══════════════════════════════════════════════════════ */
@media(max-width:480px){
  .container{padding:0 16px}
  .navbar{padding:14px 16px}

  /* ─ Hero ─ */
  .hero{padding:80px 16px 60px}
  .hero-title{font-size:clamp(2.2rem,13vw,3rem);letter-spacing:-0.5px}
  .hero-btns{flex-direction:column;align-items:flex-start}
  .btn-presidential,.btn-ghost{width:100%;text-align:center;padding:14px 24px}

  /* ─ Chiffres ─ */
  .chiffre-item{flex:0 0 100%}

  /* ─ Cards ─ */
  .eco-card{padding:28px 18px}
  .valeur-card{padding:28px 18px}
  .eco-icon{font-size:1.8rem}

  /* ─ Fondatrice ─ */
  .fondatrice-photo img{height:260px}
  .fondatrice-quote{font-size:1.1rem}

  /* ─ Vision titre ─ */
  .vision-title{font-size:1.8rem}
  .section-header h2,  .section-header h1{font-size:1.5rem}

  /* ─ Contact form ─ */
  .cc-form{gap:14px}
  .float-label input,.float-label textarea{font-size:0.92rem;padding:18px 14px 7px}

  /* ─ Footer ─ */
  .footer-top{gap:28px}
  .footer-bottom p{font-size:0.62rem;letter-spacing:0.5px}
}

/* ══════════════════════════════════════════════════════
   HAMBURGER — couleur adaptée au fond du header
   Header blanc corporate → lignes sombres (visibles)
   Header noir dark → lignes blanches (défaut .menu-toggle span)
   ══════════════════════════════════════════════════════ */
.header-white .menu-toggle span{background:var(--anthracite)}
/* Croix (état ouvert) : overlay sombre → lignes blanches */
.header-white .menu-toggle.open span{background:#fff}

/* ══════════════════════════════════════════════════════
   RESPONSIVE CORPORATE — Mobile (≤768px)
   Sections manquantes : navbar-corporate, certif-strip,
   footer-corporate, eco-corporate, actu, carrières, B2B
   ══════════════════════════════════════════════════════ */
@media(max-width:768px){
  /* ─ Navbar corporate ─ */
  .navbar-corporate{padding:0 16px;height:56px}
  .logo-corporate-wrap{height:36px;margin-right:0.75rem}
  .logo-corporate-wrap img{height:36px}
  .navbar-corporate .btn-b2b{display:none}
  .nav-right-group{gap:6px}

  /* Masque les liens desktop, affiche l'overlay quand ouvert */
  .navbar-corporate .nav-links{display:none}
  .navbar-corporate .nav-links.open{display:flex}

  /* ─ Overlay plein écran : annule les styles desktop ─
     Le règle desktop .navbar-corporate .nav-links fixe height:64px et
     align-items:stretch. Ici (spécificité 0,3,0 > 0,2,0) on les écrase
     pour que l'overlay occupe bien toute la hauteur viewport.          */
  .navbar-corporate .nav-links.open{
    height:100vh;           /* fallback navigateurs anciens */
    height:100dvh;          /* hauteur dynamique (barre d'adresse mobile) */
    flex:none;
    align-items:center;
    justify-content:center;
  }
  /* ─ <li> dans l'overlay ─ */
  .navbar-corporate .nav-links.open li{
    height:auto;
    align-self:auto;
    display:flex;
    align-items:center;
  }
  /* ─ Liens dans l'overlay ─ */
  .navbar-corporate .nav-links.open a{
    height:auto;
    padding:6px 0;
    font-size:1rem;
    font-weight:500;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.8);
    border-bottom:none;
    white-space:normal;
    text-align:center;
    display:block;
  }
  .navbar-corporate .nav-links.open a:hover,
  .navbar-corporate .nav-links.open a.active{
    color:var(--or);
    border-bottom-color:transparent;
  }

  /* ─ Certif strip — 2×2 ─ */
  .certif-strip{flex-wrap:wrap}
  .certif-item{flex:0 0 50%;min-width:0;border-right:none;border-bottom:1px solid var(--bordure);padding:0.75rem 1rem}
  .certif-item:nth-child(odd){border-right:1px solid var(--bordure)}
  .certif-item:last-child{border-bottom:none}
  .certif-item:nth-last-child(2){border-bottom:none}

  /* ─ Footer corporate — 2 colonnes ─ */
  .footer-top-grid{grid-template-columns:1fr 1fr;gap:1.5rem;padding-bottom:2rem}
  .footer-brand{grid-column:1/-1}
  .footer-bottom-bar{flex-direction:column;align-items:flex-start;gap:10px}
  .footer-legal-links{flex-wrap:wrap;gap:4px}

  /* ─ Écosystème corporate ─ */
  .eco-duo-grid{grid-template-columns:1fr}
  .eco-innov-grid{grid-template-columns:1fr 1fr}

  /* ─ Actualités ─ */
  .actu-featured{grid-template-columns:1fr}
  .actu-feat-visual{min-height:100px}
  .actu-grid-3{grid-template-columns:1fr 1fr;gap:1rem}

  /* ─ Carrières ─ */
  .careers-hero{flex-direction:column;align-items:flex-start;padding:1.75rem;gap:1.25rem}
  .jobs-grid{grid-template-columns:1fr 1fr;gap:1rem}
  .candidature-spont{flex-direction:column;align-items:flex-start;gap:1rem}

  /* ─ B2B ─ */
  .b2b-two-col{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════════════════
   RESPONSIVE CORPORATE — Petits téléphones (≤480px)
   ══════════════════════════════════════════════════════ */
@media(max-width:480px){
  /* ─ Navbar corporate ─ */
  .navbar-corporate{padding:0 12px;height:52px}

  /* ─ Certif strip — 1 colonne ─ */
  .certif-item{flex:0 0 100%;border-right:none;border-bottom:1px solid var(--bordure)}
  .certif-item:nth-child(odd){border-right:none}
  .certif-item:nth-last-child(2){border-bottom:1px solid var(--bordure)}

  /* ─ Footer corporate — 1 colonne ─ */
  .footer-top-grid{grid-template-columns:1fr;gap:1.25rem}

  /* ─ Actualités ─ */
  .actu-grid-3{grid-template-columns:1fr}

  /* ─ Carrières ─ */
  .jobs-grid{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════════════════
   OVERLAY MOBILE — éléments exclusifs (nav-mobile-only)
   Séparateur · Espace B2B · CTA Partenariat
   ══════════════════════════════════════════════════════ */

/* Cachés partout sauf dans l'overlay ouvert */
.nav-mobile-only{display:none}

@media(max-width:768px){

  /* ─ Affiché dans l'overlay ─ */
  .nav-links.open .nav-mobile-only{
    display:flex;
    align-items:center;
    justify-content:center;
  }

  /* ─ Séparateur horizontal ─ */
  .nav-mobile-sep{
    width:48px;
    height:1px;
    background:rgba(255,255,255,0.1);
    pointer-events:none;
  }

  /* ─ Lien Espace B2B ─
     Visuel secondaire : taille réduite, couleur atténuée         */
  .navbar-corporate .nav-links.open .nav-mobile-b2b a{
    height:auto;
    padding:4px 0;
    font-size:0.68rem;
    font-weight:600;
    letter-spacing:4px;
    color:rgba(255,255,255,0.38);
    border-bottom:none;
    white-space:nowrap;
    text-transform:uppercase;
  }
  .navbar-corporate .nav-links.open .nav-mobile-b2b a:hover{
    color:rgba(255,255,255,0.7);
    border-bottom-color:transparent;
  }

  /* ─ Bouton CTA Partenariat ─
     Bordure or, couleur or — miroir du btn-cta desktop          */
  .navbar-corporate .nav-links.open .nav-mobile-cta a{
    height:auto;
    padding:11px 36px;
    font-size:0.7rem;
    font-weight:700;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--or);
    border:1px solid rgba(201,168,76,0.5);
    border-bottom:1px solid rgba(201,168,76,0.5);
    white-space:nowrap;
    transition:background var(--T),color var(--T);
  }
  .navbar-corporate .nav-links.open .nav-mobile-cta a:hover{
    background:rgba(201,168,76,0.12);
    color:#fff;
    border-bottom-color:rgba(201,168,76,0.5);
  }
}

/* ── PATCH v11 — Marquee certifications + fondu SPA (10/06/2026) ── */
.certif-marquee{overflow:hidden;position:relative}
.certif-marquee .certif-track{display:flex;align-items:stretch;width:max-content;animation:certifScroll 36s linear infinite}
.certif-marquee .certif-item{flex:0 0 auto;min-width:300px;border-right:1px solid var(--bordure)}
.certif-marquee:hover .certif-track{animation-play-state:paused}
@keyframes certifScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.certif-marquee .certif-track{animation:none}}
@media(max-width:768px){
  .certif-marquee .certif-track{width:100%;flex-wrap:wrap;animation:none}
  .certif-marquee .certif-dup{display:none!important}
  .certif-marquee .certif-item{flex:0 0 50%;min-width:0;border-right:none;border-bottom:1px solid var(--bordure);padding:0.75rem 1rem}
}

/* Fondu SPA entre onglets */
#app-root.tab-leaving{opacity:0;transition:opacity .16s ease}
#app-root.tab-entering{opacity:0}
#app-root.tab-entered{opacity:1;transition:opacity .22s ease}

/* ══════════════════════════════════════════════════════
   PATCH v12 — AUDIT PREMIUM (11/06/2026)
   Contrastes WCAG · boutons homogènes · ombres douces
   · formulaires confortables · respiration desktop
   ══════════════════════════════════════════════════════ */

/* ── 1. CONTRASTE — titres de section sur fonds clairs ──
   Règle : texte sur fond clair = sombre. L'or reste un accent (10%),
   jamais une couleur de titre sur albâtre/blanc. */
.section-albâtre .section-header h2,.section-albâtre .section-header h1,
.actu-section .section-header h2,.actu-section .section-header h1,
.valeurs .section-header h2,.valeurs .section-header h1{color:var(--anthracite)}

/* ── 2. CONTRASTE — textes sur fonds sombres relevés au seuil AA ── */
.hero-sub{color:rgba(255,255,255,0.55)}
.hero-eyebrow p{color:rgba(255,255,255,0.38)}
.eco-card p{color:rgba(255,255,255,0.5)}
.eco-tags span{color:rgba(255,255,255,0.42);border-color:rgba(255,255,255,0.14)}
.valeur-card p{color:rgba(255,255,255,0.52)}
.vision-right p{color:rgba(255,255,255,0.62)}
.vt-label{color:rgba(255,255,255,0.5)}
.vs-title{color:rgba(255,255,255,0.4)}
.section-desc{color:rgba(255,255,255,0.48)}
.chiffre-item p{color:rgba(255,255,255,0.5)}
.cc-left>p{color:rgba(255,255,255,0.55)}
.cc-item span{color:rgba(255,255,255,0.42)}
.careers-hero p{color:rgba(255,255,255,0.55)}
.careers-stat-l{color:rgba(255,255,255,0.45)}
.b2b-offer p{color:rgba(255,255,255,0.55);line-height:1.65}
.cookie-content p{color:rgba(255,255,255,0.58)}
.cookie-btn-decline{color:rgba(255,255,255,0.55);border-color:rgba(255,255,255,0.22)}

/* Lumière relevée sur les overrides light (sections claires) */
.vision-light p{color:#555550}
.vision-light .vt-label{color:#6B6B66}

/* ── Footer — atténué mais lisible ── */
.ft-tagline,.ft-eco h4,.ft-contact h4{color:rgba(255,255,255,0.34)}
.ft-eco a{color:rgba(255,255,255,0.48)}
.ft-contact p{color:rgba(255,255,255,0.45)}
.ft-legal-link{color:rgba(255,255,255,0.34)}
.footer-bottom p{color:rgba(255,255,255,0.3)}
.footer-col-title{color:rgba(255,255,255,0.36)}
.footer-col a,.footer-col span{color:rgba(255,255,255,0.5)}
.footer-copyright{color:rgba(255,255,255,0.32)}
.footer-legal-links a{color:rgba(255,255,255,0.36)}
.footer-brand-tagline{color:rgba(255,255,255,0.42)}

/* ── 3. FORMULAIRE CONTACT (fond sombre) — saisie parfaitement lisible ── */
.float-label input,.float-label textarea{color:#F2ECD8;border-color:rgba(212,175,122,0.42)}
.float-label input:focus,.float-label textarea:focus{border-color:var(--or)}
.float-label label{color:rgba(212,175,122,0.7)}

/* ── 4. FORMULAIRE B2B (fond clair) — hauteur 45px + focus doux ── */
.form-corporate input,.form-corporate select{min-height:45px;padding:11px 14px;border-radius:8px}
.form-corporate textarea{min-height:110px;padding:11px 14px;border-radius:8px}
.form-corporate input:focus,.form-corporate select:focus,.form-corporate textarea:focus{border-color:var(--or-dark);box-shadow:0 0 0 3px rgba(200,151,58,0.12)}

/* ── 5. BOUTONS — arrondi homogène 8px + micro-élévation au survol ── */
.btn-presidential,.btn-ghost,.btn-cta,.btn-b2b,
.navbar-corporate .btn-cta,.cookie-btn-accept,.cookie-btn-decline{border-radius:8px}
.btn-presidential:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(204,0,0,0.22)}
.btn-ghost:hover{transform:translateY(-2px)}
.btn-cta:hover{transform:translateY(-2px)}
@media (prefers-reduced-motion:reduce){
  .btn-presidential:hover,.btn-ghost:hover,.btn-cta:hover{transform:none}
}

/* ── 6. CARTES — ombres portées ultra-douces, fin du flat ── */
.actu-card,.job-card,.eco-innov-card,.candidature-spont,.actu-featured{box-shadow:0 2px 12px rgba(10,25,47,0.04)}
.actu-card:hover,.job-card:hover{box-shadow:0 8px 30px rgba(10,25,47,0.08)}
.eco-card-corporate:hover{box-shadow:0 8px 30px rgba(10,25,47,0.08)}

/* ── 7. RESPIRATION — desktop plus aéré, mobile inchangé ── */
@media(min-width:1024px){
  .section-albâtre,.section-blanc,.section-dark,.actu-section{padding:5.5rem 0}
  .eco-card-body{padding:1.75rem}
  .form-corporate{padding:2rem}
}

/* ── Lisibilité (contrôle des contrastes 23/10/2026) : textes du pied de page trop pâles
   sur fond noir (ratio 1,7 à 4,1 pour 4,5 requis) -> au moins 4,5:1 ── */
.footer-col .ft-soon, .ft-soon{color:rgba(255,255,255,0.55)}
.footer-copyright{color:rgba(255,255,255,0.6)}
.footer-legal-links a{color:rgba(255,255,255,0.62)}
.footer-legal-links a:hover{color:var(--or)}
.footer-col-title{color:rgba(255,255,255,0.62)}
.footer-brand-tagline{color:rgba(255,255,255,0.62)}
.footer-brand-founder{color:rgba(212,175,122,0.92)}
.footer-bottom p{color:rgba(255,255,255,0.6)}
.ft-legal-link{color:rgba(255,255,255,0.6)}
.wa-bubble strong{color:#0B6B5F}

/* ═══ Accueil : nouvelles sections (pôles, pour qui, pourquoi, étapes, actualités, appel final) ═══ */
.hp-section{background:var(--blanc);padding:clamp(56px,8vw,96px) 0}
.hp-alt{background:#F4F2EE}
.hp-section .section-header{text-align:center;margin-bottom:clamp(28px,4vw,48px)}
.hp-section .section-pre{color:var(--rouge)}
.hp-section .section-header h2,.hp-section .section-header h2 em{color:var(--anthracite)}
.hp-section .section-header h2 em{font-style:italic;color:#9C2B1F}
.hp-grid{display:grid;gap:20px}
.hp-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hp-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.hp-pole,.hp-card{background:#fff;border:1px solid var(--bordure);border-radius:10px;padding:28px 24px;display:flex;flex-direction:column;gap:10px}
.hp-alt .hp-card{background:#fff}
.hp-pole h3,.hp-card h3{font-family:'Cormorant Garamond',serif;font-size:1.45rem;font-weight:700;color:var(--anthracite);line-height:1.25}
.hp-pole p,.hp-card p{font-family:'Open Sans',sans-serif;font-size:0.9rem;color:#4A4A4A;line-height:1.7}
.hp-pole-ico{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:rgba(204,0,0,0.07);color:var(--rouge)}
.hp-meta{font-family:'Montserrat',sans-serif !important;font-size:0.68rem !important;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:#8A6A1C !important}
.hp-link{margin-top:auto;font-size:0.72rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--rouge);text-decoration:none;padding:10px 0;min-height:44px;display:inline-flex;align-items:center}
.hp-link:hover{text-decoration:underline}
.hp-pole-soon{opacity:.75}
.hp-short{display:none}
.hp-proofs{text-align:center;margin-top:28px;font-size:0.82rem;font-weight:600;color:#4A4A4A;letter-spacing:0.02em}
.hp-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;counter-reset:none;padding:0;margin:0}
.hp-step{background:#fff;border:1px solid var(--bordure);border-radius:10px;padding:28px 24px;display:flex;flex-direction:column;gap:8px}
.hp-step-n{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--rouge);color:#fff;font-weight:700;font-size:1rem}
.hp-step h3{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:700;color:var(--anthracite)}
.hp-step p{font-family:'Open Sans',sans-serif;font-size:0.9rem;color:#4A4A4A}
.hp-news{text-decoration:none}
.hp-news:hover h3{color:var(--rouge)}
.hp-center{text-align:center;margin-top:20px}
.hp-final{background:var(--anthracite);padding:clamp(56px,8vw,96px) 0;text-align:center}
.hp-final h2{font-family:'Cormorant Garamond',serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;color:#fff;line-height:1.2;margin-bottom:12px}
.hp-final p{color:rgba(255,255,255,0.75);font-size:0.95rem;margin-bottom:28px}
.hp-final-btns{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
.hp-final .btn-ghost{color:#fff;border-color:rgba(255,255,255,0.45)}
@media (max-width:900px){
  .hp-grid-3,.hp-grid-4,.hp-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .hp-grid-3,.hp-grid-4,.hp-steps{grid-template-columns:1fr}
  .hp-long{display:none}
  .hp-short{display:block}
  .hp-pole,.hp-card,.hp-step{padding:22px 18px}
  .hp-final-btns a,.hero-btns a{width:100%;max-width:340px;text-align:center}
}

/* Barre de menu blanche : en défilant, la règle #header.scrolled (fond noir) l'emportait sur
   .header-white -> fond noir + liens gris foncé = menu illisible. Elle reste blanche. */
#header.header-white.scrolled{background:rgba(255,255,255,0.97);border-bottom-color:var(--bordure)}
