:root{
    --ink:#141210; --red:#9A1109; --red-deep:#7A0D06; --taupe:#645B52;
    --paper:#FAF8F4; --line:#141210; --hair:#E4DFD6;
    --serif:'Spectral',Georgia,serif; --sans:'Inter',system-ui,sans-serif;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{font-family:var(--sans);color:var(--ink);background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
  a{color:inherit;text-decoration:none;} img{display:block;}
  ::selection{background:var(--red);color:#fff;}
  .wrap{max-width:1400px;margin:0 auto;padding:0 56px;}
  .kicker{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--taupe);font-weight:500;}
  a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:3px;}

  /* NAV */
  header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);}
  .nav{display:flex;align-items:center;justify-content:space-between;height:78px;}
  .brand{display:flex;align-items:baseline;gap:14px;}
  .logo{font-family:var(--serif);font-size:29px;letter-spacing:.3px;}
  .logo .t{color:var(--red);} .logo .rest{color:var(--taupe);}
  .est{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--taupe);border-left:1px solid var(--hair);padding-left:14px;}
  .nav-links{display:flex;gap:28px;align-items:center;}
  .nav-links a{font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;position:relative;padding:4px 0;transition:color .25s;}
  .nav-links a:not(.nav-cta)::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--red);transition:width .3s;}
  .nav-links a:not(.nav-cta):hover{color:var(--red);}
  .nav-links a:not(.nav-cta):hover::after{width:100%;}
  .nav-links a.nav-cta{display:inline-flex;align-items:center;justify-content:center;line-height:1;background:var(--red);color:#fff;border:1px solid var(--red);padding:14px 40px;border-radius:8px;font-size:12.5px;letter-spacing:1.6px;text-indent:1.6px;transition:background .3s ease,transform .3s ease;}
  .nav-links a.nav-cta:hover{background:var(--red-deep);border-color:var(--red-deep);transform:translateY(-1px);}
  .burger{display:none;background:none;border:none;font-size:24px;cursor:pointer;}

  /* HERO */
  .hero{padding:96px 0 0;}
  .hero-grid{display:grid;grid-template-columns:1.62fr 1fr;gap:56px;align-items:center;}
  .hero .kicker{display:flex;align-items:center;gap:14px;margin-bottom:34px;}
  .hero .kicker .rule{width:48px;height:1px;background:var(--red);}
  .hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(44px,7vw,90px);line-height:.98;letter-spacing:-2.4px;}
  .hero h1 em{font-style:italic;font-weight:400;color:var(--red);}
  .hero-meta{display:flex;flex-direction:column;}
  .hero-meta .hero-cta{margin-top:30px;align-self:flex-start;}
  .hero-meta .stat{border-top:1px solid var(--line);padding:18px 0 20px;}
  .hero-meta .stat:last-child{border-bottom:1px solid var(--hair);}
  .hero-meta .big{font-family:var(--serif);font-weight:300;font-size:60px;line-height:1;letter-spacing:-1.5px;}
  .hero-meta .big em{color:var(--red);font-style:normal;}
  .hero-meta .lbl{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--taupe);margin-top:8px;}
  .hero-rule{height:2px;background:var(--red);margin:44px 0 34px;width:0;}
  .hero-bottom{display:grid;grid-template-columns:1.62fr 1fr;gap:56px;align-items:end;}
  .hero-lede{font-size:17px;color:var(--taupe);max-width:none;text-align:justify;}
  .hero-bottom .btn{justify-self:end;align-self:end;}
  .btn{display:inline-flex;align-items:center;gap:12px;background:var(--red);color:#fff;font-size:13px;letter-spacing:.6px;padding:16px 30px;transition:.3s;white-space:nowrap;border:none;cursor:pointer;}
  .btn:hover{background:var(--red-deep);transform:translateY(-2px);}
  .btn .arr{transition:transform .3s;} .btn:hover .arr{transform:translateX(5px);}

  /* MANIFESTO */
  .manifesto{padding:104px 0;margin-top:104px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);}
  .manifesto .mark{font-family:var(--serif);font-size:86px;line-height:.55;color:var(--red);display:block;margin-bottom:18px;}
  
  .manifesto p{font-family:var(--serif);font-weight:300;font-size:clamp(28px,3.9vw,46px);line-height:1.3;letter-spacing:-.5px;max-width:none;}
  .manifesto p em{font-style:italic;color:var(--red);}
  .manifesto .gm{color:var(--red);}
  .manifesto .sig{margin-top:30px;font-size:13px;color:var(--taupe);letter-spacing:.3px;}

  /* SECTION FRAME */
  section{padding:108px 0;}
  .sec-head{display:grid;grid-template-columns:128px 1fr;gap:44px;align-items:start;margin-bottom:58px;}
  .sec-title-row{display:flex;align-items:center;justify-content:space-between;gap:36px;}
  .sec-idx{font-family:var(--serif);font-style:italic;font-size:34px;color:var(--red);line-height:1;padding-top:6px;}
  .sec-idx .of{display:block;font-family:var(--sans);font-style:normal;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--taupe);margin-top:8px;}
  .sec-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(34px,4.7vw,58px);letter-spacing:-.9px;line-height:1.03;}
  .sec-head .note{font-size:14.5px;color:var(--taupe);margin-top:18px;max-width:520px;}
  .sec-tag{font-family:var(--serif);font-style:italic;font-size:17px;color:var(--taupe);text-align:right;flex-shrink:0;line-height:1.4;white-space:nowrap;}
  .team .sec-tag{color:#B7ABA0;} .cabinet .sec-tag{color:#E8877F;}

  /* EXPERTISE */
  .exp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair);}
  .exp-card{background:#fff;padding:42px 34px 38px;position:relative;transition:background .35s;}
  .exp-card::before{content:"";position:absolute;top:0;left:0;height:3px;width:0;background:var(--red);transition:width .45s;}
  .exp-card:hover::before{width:100%;}
  .exp-card .cat{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--red);font-weight:600;}
  .exp-card h3{font-family:var(--serif);font-weight:400;font-size:27px;margin:18px 0 20px;letter-spacing:-.3px;}
  .exp-card ul{list-style:none;}
  .exp-card li{font-size:13.5px;color:var(--taupe);padding:11px 0;border-top:1px solid var(--hair);}

  /* METHODE */
  .methode{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .steps{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair);}
  .step{background:var(--paper);padding:34px 22px 30px;position:relative;transition:background .35s;}
  .step::before{content:"";position:absolute;top:0;left:0;height:3px;width:0;background:var(--red);transition:width .45s;}
  .step:hover::before{width:100%;}
  .step .n{font-family:var(--serif);font-style:italic;font-size:30px;color:var(--red);line-height:1;}
  .step h4{font-size:14px;font-weight:600;margin:18px 0 8px;}
  .step p{font-size:12.5px;color:var(--taupe);line-height:1.55;}
  /* REGISTRE */
  .ledger{border-top:1px solid var(--line);}
  .ledger-row{display:grid;grid-template-columns:1.5fr 1fr 168px;gap:24px;align-items:center;padding:26px 12px;border-bottom:1px solid var(--hair);transition:background .3s,padding-left .3s;}
  .ledger-row:hover{background:var(--paper);padding-left:24px;}
  .ledger-co{font-family:var(--serif);font-size:22px;letter-spacing:-.2px;line-height:1.1;}
  .ledger-city{font-size:12px;color:var(--taupe);letter-spacing:.4px;margin-top:4px;text-transform:uppercase;}
  .ledger-op{font-size:14px;color:var(--ink);}
  .badge{justify-self:end;font-size:10px;letter-spacing:1.3px;text-transform:uppercase;padding:6px 13px;border-radius:999px;white-space:nowrap;font-weight:500;}
  .badge.vend{border:1px solid var(--red);color:var(--red);}
  .badge.acq{border:1px solid var(--taupe);color:var(--taupe);}
  .ledger-note{margin-top:30px;font-size:13px;color:var(--taupe);}
  .ledger-note a{color:var(--red);border-bottom:1px solid var(--red);padding-bottom:1px;}

  /* CABINET — immeuble N&B en fond, intérieurs couleur par-dessus */
  .cabinet{position:relative;border-top:1px solid var(--line);overflow:hidden;padding:124px 0 116px;}
  .cab-bg{position:absolute;inset:0;z-index:0;}
  .cab-bg img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%) contrast(1.05) brightness(.46);}
  .cab-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,18,16,.74),rgba(20,18,16,.5));}
  .cab-inner{position:relative;z-index:1;}
  .cabinet .sec-head{margin-bottom:64px;}
  .cabinet .sec-head h2{color:#fff;font-size:clamp(34px,4.6vw,56px);line-height:1.03;}
  .cabinet .sec-head .note{font-size:15px;line-height:1.7;max-width:none;text-align:justify;}
  .cab-shots{display:grid;grid-template-columns:1fr 1fr .82fr;gap:26px;align-items:stretch;}
  .cab-shots figure{overflow:hidden;border:6px solid #fff;box-shadow:0 30px 60px -22px rgba(0,0,0,.7);}
  .cab-shots img{width:100%;height:100%;min-height:320px;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1);}
  .cab-shots figure:hover img{transform:scale(1.05);}
  .cab-addr{align-self:center;color:#fff;padding-left:14px;border-left:2px solid var(--red);}
  .cab-addr .lbl{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#E8877F;margin-bottom:12px;}
  .cab-addr p{font-family:var(--serif);font-weight:300;font-size:23px;line-height:1.45;letter-spacing:-.2px;}

  /* EQUIPE with photos */
  .team{background:var(--ink);color:#fff;border-top:1px solid var(--line);}
  .team .kicker,.team .sec-head .note{color:#B7ABA0;}
  .team .sec-head h2{color:#fff;} .team .sec-idx{color:#E8877F;} .team .sec-idx .of{color:#B7ABA0;}
  .team-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.15);}
  .member{border-right:1px solid rgba(255,255,255,.15);}
  .member:last-child{border-right:none;}
  .member .photo{aspect-ratio:4/5;overflow:hidden;}
  .member .photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(12%);transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .5s;}
  .member:hover .photo img{transform:scale(1.03);filter:grayscale(0%);}
  .member .photo.ph{aspect-ratio:4/5;background:#211c19;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;}
  .member .photo.ph .mono{font-family:var(--serif);font-style:italic;font-size:70px;color:#E8877F;line-height:1;}
  .member .photo.ph .soon{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#8A7F74;}
  .member .body{padding:26px 30px 34px;}
  .member h3{font-family:var(--serif);font-weight:500;font-size:23px;margin-bottom:5px;}
  .member .role{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#B7ABA0;margin-bottom:14px;}
  .member .bio{font-size:13px;color:#C9BEB3;line-height:1.6;margin-bottom:16px;min-height:40px;}
  .member a.link{font-size:13px;color:#E8DED4;display:inline-flex;gap:8px;transition:color .25s;}
  .member a.link:hover{color:#E8877F;}
  .member .m-actions{display:flex;justify-content:center;gap:20px;margin-top:20px;}
  .member .m-ico{color:#E8877F;display:inline-flex;transition:color .25s ease,transform .25s ease;}
  .member .m-ico:hover{color:#fff;transform:translateY(-2px);}
  .member .m-ico svg{width:22px;height:22px;fill:currentColor;display:block;}

  /* CONTACT */
  .contact{border-top:1px solid var(--line);background:var(--paper);}
  .contact-inner{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:center;}
  .contact h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,4.8vw,60px);line-height:1.06;letter-spacing:-1.2px;}
  .contact h2 em{font-style:italic;color:var(--red);}
  .contact-info .label{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;margin:22px 0 6px;}
  .contact-info p{font-size:14px;color:var(--taupe);}
  .contact-info a{color:var(--red);}

  /* FOOTER */
  footer{background:var(--ink);color:#B7ABA0;padding:64px 0 34px;}
  .foot-top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:32px;padding-bottom:38px;border-bottom:1px solid rgba(255,255,255,.14);}
  .foot-logo{font-family:var(--serif);font-size:28px;color:#fff;}
  .foot-logo .t{color:#E8877F;}
  .foot-cols{display:flex;gap:70px;flex-wrap:wrap;}
  .foot-col h5{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#fff;margin-bottom:15px;font-weight:600;}
  .foot-col a{display:block;font-size:13px;padding:4px 0;transition:color .25s;}
  .foot-col a:hover{color:#fff;}
  .foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:28px;font-size:12px;color:#8A7F74;}

  .reveal{opacity:0;transform:translateY(30px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1);will-change:opacity,transform;}
  .reveal.in{opacity:1;transform:none;}

  @media(max-width:1024px){
    .nav-links{display:none;} .burger{display:block;} .est{display:none;}
    header.nav-open .nav-links{display:flex;flex-direction:column;align-items:flex-start;gap:20px;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:26px 32px;box-shadow:0 26px 44px -26px rgba(20,18,16,.28);}
    header.nav-open .nav-links a{font-size:14px;letter-spacing:1px;}
    header.nav-open .nav-cta{padding:13px 26px;}
    header.nav-open .lang-switch{margin-left:0;margin-top:6px;}
  }
  @media(max-width:900px){
    .hero-grid,.hero-bottom,.sec-head{grid-template-columns:1fr;gap:28px;}
    .sec-tag{display:none;}
    .hero-lede{text-align:left;} .hero-bottom .btn{justify-self:start;}
    .exp-grid,.team-grid,.steps,.contact-inner,.cab-shots{grid-template-columns:1fr;}
    .cab-grid{grid-template-columns:1fr;grid-auto-rows:220px;}
    .cab-grid figure.big{grid-row:auto;}
    .contact-inner{gap:36px;}
    .member{border-right:none;border-bottom:1px solid rgba(255,255,255,.15);}
    .ledger-row{grid-template-columns:1fr;gap:10px;}
    .badge{justify-self:start;}
  }
  @media(max-width:680px){
    .wrap{padding:0 22px;}
    section,.manifesto{padding:64px 0;} .hero{padding-top:56px;}
  }
  
  @media(max-width:680px){
    .nav{height:64px;}
    .hero{padding-top:44px;}
    .hero h1{font-size:clamp(34px,9vw,50px);letter-spacing:-1px;}
    .hero .kicker{margin-bottom:22px;}
    .hero-meta .big{font-size:46px;}
    .hero-rule{margin:30px 0 26px;}
    .hero-lede{text-align:left;}
    .manifesto p{font-size:clamp(24px,6.4vw,32px);line-height:1.32;}
    .sec-idx{font-size:26px;}
    .sec-head{gap:18px;margin-bottom:40px;}
    .sec-head h2{font-size:clamp(28px,7.4vw,38px);}
    .exp-card{padding:32px 26px 30px;}
    .exp-card h3{font-size:24px;}
    .cabinet{padding:72px 0;}
    .cabinet .sec-head h2{font-size:clamp(30px,8vw,42px);}
    .cab-addr{padding-left:0;border-left:none;border-top:2px solid var(--red);padding-top:16px;}
    .cab-shots img{min-height:240px;}
    .rz-cell,.rz-more{height:120px;}
    .rz-cell img{width:130px;}
    .rz-ov{padding:6vh 14px;}
    .contact h2{font-size:clamp(30px,7.4vw,40px);}
    .contact-inner{gap:30px;}
    .foot-top{flex-direction:column;gap:26px;}
    .foot-cols{gap:38px;}
    .foot-bottom{flex-direction:column;align-items:flex-start;gap:8px;}
    /* --- compaction : moins vertical --- */
    section,.manifesto{padding:54px 0;}
    .member{display:flex;gap:18px;align-items:flex-start;}
    .member .photo{width:118px;flex-shrink:0;}
    .member .body{flex:1;}
    .member .bio-link{margin:12px 0 0;}
    .member .m-actions{justify-content:flex-start;}
    .team-grid{gap:24px;}
    .steps{grid-template-columns:repeat(2,1fr);}
    .cabinet{padding:58px 0;}
    .cab-shots img{min-height:200px;}
  }
  @media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;}.reveal,.hero-title{opacity:1;transform:none;clip-path:none;}html{scroll-behavior:auto;}}

  /* REGISTRE — grille logos + carte modale */
  .rz-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--hair);}
  .rz-cell,.rz-more{border-right:1px solid var(--hair);border-bottom:1px solid var(--hair);height:156px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:20px;transition:background .3s ease,transform .3s cubic-bezier(.2,.7,.2,1);}
  .rz-cell img{width:158px;max-width:82%;height:auto;object-fit:contain;filter:grayscale(100%);opacity:.82;transition:filter .4s ease,opacity .4s ease,transform .4s ease;}
  .rz-cell:hover{background:var(--paper);transform:translateY(-2px);}
  .rz-cell:hover img{filter:none;opacity:1;}
  .rz-more{flex-direction:column;gap:6px;color:var(--red);}
  .rz-more:hover{background:var(--red);}
  .rz-more:hover *{color:#fff;}
  .rz-more .t1{font-family:var(--serif);font-style:italic;font-size:19px;}
  .rz-more .t2{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;}
  .rz-ov{position:fixed;inset:0;background:rgba(20,18,16,.5);display:none;align-items:flex-start;justify-content:center;padding:8vh 24px;z-index:1000;opacity:0;transition:opacity .35s ease;}
  .rz-ov.on{opacity:1;backdrop-filter:blur(3px);}
  .rz-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(20px) saturate(1.05);backdrop-filter:blur(20px) saturate(1.05);width:100%;max-width:480px;position:relative;box-shadow:0 30px 70px -20px rgba(20,18,16,.5);max-height:84vh;overflow:auto;opacity:0;transform:translateY(18px) scale(.965);transition:opacity .42s cubic-bezier(.2,.75,.2,1),transform .42s cubic-bezier(.2,.75,.2,1);}
  .rz-ov.on .rz-card{opacity:1;transform:none;}
  .rz-card .clogo{width:150px;max-width:62%;height:auto;object-fit:contain;margin-bottom:24px;display:block;}
  .rz-card.wide{max-width:680px;}
  .rz-list > div{display:grid!important;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:22px 0;border-bottom:1px solid #E4DFD6;}
  .rz-list > div:last-child{border-bottom:none;}
  @media(max-width:1024px){
    .nav-links{display:none;} .burger{display:block;} .est{display:none;}
    header.nav-open .nav-links{display:flex;flex-direction:column;align-items:flex-start;gap:20px;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:26px 32px;box-shadow:0 26px 44px -26px rgba(20,18,16,.28);}
    header.nav-open .nav-links a{font-size:14px;letter-spacing:1px;}
    header.nav-open .nav-cta{padding:13px 26px;}
    header.nav-open .lang-switch{margin-left:0;margin-top:6px;}
  }
  @media(max-width:900px){.rz-grid{grid-template-columns:repeat(2,1fr);}}
  
  @media(max-width:680px){
    .nav{height:64px;}
    .hero{padding-top:44px;}
    .hero h1{font-size:clamp(34px,9vw,50px);letter-spacing:-1px;}
    .hero .kicker{margin-bottom:22px;}
    .hero-meta .big{font-size:46px;}
    .hero-rule{margin:30px 0 26px;}
    .hero-lede{text-align:left;}
    .manifesto p{font-size:clamp(24px,6.4vw,32px);line-height:1.32;}
    .sec-idx{font-size:26px;}
    .sec-head{gap:18px;margin-bottom:40px;}
    .sec-head h2{font-size:clamp(28px,7.4vw,38px);}
    .exp-card{padding:32px 26px 30px;}
    .exp-card h3{font-size:24px;}
    .cabinet{padding:72px 0;}
    .cabinet .sec-head h2{font-size:clamp(30px,8vw,42px);}
    .cab-addr{padding-left:0;border-left:none;border-top:2px solid var(--red);padding-top:16px;}
    .cab-shots img{min-height:240px;}
    .rz-cell,.rz-more{height:120px;}
    .rz-cell img{width:130px;}
    .rz-ov{padding:6vh 14px;}
    .contact h2{font-size:clamp(30px,7.4vw,40px);}
    .contact-inner{gap:30px;}
    .foot-top{flex-direction:column;gap:26px;}
    .foot-cols{gap:38px;}
    .foot-bottom{flex-direction:column;align-items:flex-start;gap:8px;}
    /* --- compaction : moins vertical --- */
    section,.manifesto{padding:54px 0;}
    .member{display:flex;gap:18px;align-items:flex-start;}
    .member .photo{width:118px;flex-shrink:0;}
    .member .body{flex:1;}
    .member .bio-link{margin:12px 0 0;}
    .member .m-actions{justify-content:flex-start;}
    .team-grid{gap:24px;}
    .steps{grid-template-columns:repeat(2,1fr);}
    .cabinet{padding:58px 0;}
    .cab-shots img{min-height:200px;}
  }
  @media(prefers-reduced-motion:reduce){.rz-ov,.rz-card,.rz-cell{transition:none;}}

  /* Sélecteur de langue */
  .lang-switch{display:inline-flex;align-items:center;gap:6px;margin-left:10px;}
  .lang-switch button{background:none;border:none;font-family:var(--sans);font-size:11.5px;letter-spacing:1px;color:var(--taupe);cursor:pointer;padding:2px;text-transform:uppercase;transition:color .2s;}
  .lang-switch button:hover{color:var(--ink);}
  .lang-switch button.active{color:var(--red);font-weight:600;}
  .lang-switch .sep{color:var(--hair);}

  /* ======= ÉLÉVATION : hero animé, filigrane, micro-interactions, parallaxe ======= */
  html{scroll-behavior:smooth;}
  #scrollbar{position:fixed;top:0;left:0;height:2px;width:0;background:var(--red);z-index:2000;}
  .hero-title{opacity:0;}
  body.loaded .hero-title{animation:heroTitle 1.15s cubic-bezier(.16,1,.3,1) .2s forwards;}
  @keyframes heroTitle{from{opacity:0;transform:translateY(42px);clip-path:inset(0 0 100% 0);}to{opacity:1;transform:none;clip-path:inset(0 0 0 0);}}
  .sec-idx{position:relative;}
  .big-idx{position:absolute;top:-46px;left:-12px;font-family:var(--serif);font-style:italic;font-size:158px;line-height:1;color:var(--red);opacity:.05;pointer-events:none;z-index:0;user-select:none;}
  .cabinet .big-idx{color:#fff;opacity:.07;}
  .sec-idx>span.of{position:relative;z-index:1;}
  .exp-card{transition:background .35s,transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s cubic-bezier(.16,1,.3,1);}
  .exp-card:hover{transform:translateY(-5px);box-shadow:0 34px 66px -34px rgba(20,18,16,.22);}
  .step{transition:background .35s,transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s cubic-bezier(.16,1,.3,1);}
  .step:hover{transform:translateY(-4px);box-shadow:0 28px 56px -32px rgba(20,18,16,.2);z-index:2;}
  .rz-cell{overflow:hidden;}
  .rz-cell img{transition:filter .35s ease,opacity .35s ease,transform .55s cubic-bezier(.16,1,.3,1);}
  .rz-cell:hover img{transform:scale(1.07);}
  .member .photo{overflow:hidden;}
  .member .photo img{transition:transform .7s cubic-bezier(.16,1,.3,1);}
  .member:hover .photo img{transform:scale(1.045);}
  .btn{transition:background .3s ease,transform .3s ease,box-shadow .3s ease;}
  .btn:hover{transform:translateY(-2px);box-shadow:0 18px 34px -18px rgba(154,17,9,.5);}
  .cab-bg img{will-change:transform;}
  @media(max-width:680px){.big-idx{display:none;}}

  .rz-card.grid{max-width:min(1300px,94vw);}
  .rz-ogrid{display:grid;grid-template-columns:repeat(5,1fr);column-gap:36px;row-gap:0;}
  .rz-oitem{padding:20px 12px 22px 0;border-top:1px solid rgba(228,223,214,.65);}
  .rz-oname{font-family:var(--serif);font-size:16px;line-height:1.22;color:var(--ink);}
  .rz-ometa{font-size:11px;color:var(--taupe);line-height:1.4;margin-top:4px;}
  .rz-orole{font-size:9px;letter-spacing:1px;text-transform:uppercase;margin-top:8px;}
  @media(max-width:1100px){.rz-ogrid{grid-template-columns:repeat(4,1fr);}}
  @media(max-width:820px){.rz-ogrid{grid-template-columns:repeat(3,1fr);column-gap:28px;}}
  @media(max-width:600px){.rz-ogrid{grid-template-columns:repeat(2,1fr);column-gap:22px;}}
  @media(max-width:420px){.rz-ogrid{grid-template-columns:1fr;}}

  /* Bios équipe */
  .bio-link{display:block;width:-moz-fit-content;width:fit-content;margin:14px auto 0;background:none;border:none;color:var(--red);font-family:var(--sans);font-size:12px;letter-spacing:.4px;cursor:pointer;padding:0;transition:opacity .2s;}
  .bio-link:hover{opacity:.65;}
  .tm-ov{position:fixed;inset:0;background:rgba(20,18,16,.5);display:none;align-items:flex-start;justify-content:center;padding:8vh 24px;z-index:1000;opacity:0;transition:opacity .35s ease;}
  .tm-ov.on{opacity:1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);}
  .tm-card{background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);width:100%;max-width:620px;position:relative;box-shadow:0 30px 70px -20px rgba(20,18,16,.5);max-height:84vh;overflow:auto;opacity:0;transform:translateY(18px) scale(.965);transition:opacity .42s cubic-bezier(.2,.75,.2,1),transform .42s cubic-bezier(.2,.75,.2,1);}
  .tm-ov.on .tm-card{opacity:1;transform:none;}
  .tm-x{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:50%;background:#FAF8F4;border:1px solid #E4DFD6;font-size:18px;color:#645B52;cursor:pointer;z-index:2;}
  .tm-inner{padding:46px 46px 40px;}
  .tm-head{display:flex;align-items:center;gap:24px;margin-bottom:28px;}
  .tm-photo{width:94px;height:118px;flex-shrink:0;overflow:hidden;background:var(--paper);border:1px solid var(--hair);display:flex;align-items:center;justify-content:center;}
  .tm-photo img{width:100%;height:100%;object-fit:cover;}
  .tm-init{font-family:var(--serif);font-size:32px;color:var(--taupe);}
  .tm-name{font-family:var(--serif);font-size:26px;letter-spacing:-.3px;}
  .tm-role{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--red);margin-top:7px;}
  .tm-bio p{font-size:14px;line-height:1.72;color:var(--ink);margin-bottom:14px;}
  .tm-bio p:last-child{margin-bottom:0;}
  .tm-icons{display:flex;gap:20px;margin-top:28px;}
  .tm-icons .m-ico{color:#E8877F;}
  @media(max-width:560px){.tm-inner{padding:36px 24px 30px;}.tm-head{flex-direction:column;text-align:center;align-items:center;}}

  .lang-switch a{background:none;border:none;font-family:var(--sans);font-size:11.5px;letter-spacing:1px;color:var(--taupe);cursor:pointer;padding:2px;text-transform:uppercase;transition:color .2s;text-decoration:none;}
  .lang-switch a:hover{color:var(--ink);}
  .lang-switch a.active{color:var(--red);font-weight:600;}

  /* ===== Pages légales ===== */
  .legal-page{padding:140px 0 100px;background:var(--paper);}
  .legal-page .wrap{max-width:840px;}
  .legal-page h1{font-size:clamp(34px,4.5vw,52px);line-height:1.05;letter-spacing:-1px;margin-bottom:0;max-width:900px;}
  .legal-back{font-size:11.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--taupe);text-decoration:none;transition:color .2s;}
  .legal-back:hover{color:var(--red);}
  .legal-body{margin-top:44px;}
  .legal-body h2{font-family:var(--serif);font-weight:400;font-size:23px;letter-spacing:-.3px;color:var(--ink);margin:38px 0 12px;padding-top:24px;border-top:1px solid var(--hair);}
  .legal-body h2:first-child{border-top:none;padding-top:0;margin-top:0;}
  .legal-body h3{font-family:var(--serif);font-weight:400;font-size:23px;letter-spacing:-.3px;text-transform:none;color:var(--ink);margin:38px 0 12px;padding-top:24px;border-top:1px solid var(--hair);}
  .legal-body p{font-size:15px;line-height:1.78;color:var(--taupe);margin:0 0 16px;}
  .legal-body ul{margin:0 0 18px;padding-left:20px;}
  .legal-body li{font-size:15px;line-height:1.7;color:var(--taupe);margin-bottom:7px;}
  .legal-body a{color:var(--red);}
  .legal-foot{background:var(--ink);color:#C9BEB3;padding:34px 0;}
  .legal-foot .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12.5px;letter-spacing:.3px;}
  @media(max-width:680px){.legal-page{padding:108px 0 66px;}}

  /* ===== Page Contact ===== */
  .contact-page{padding:140px 0 90px;background:var(--paper);}
  .contact-page h1{font-size:clamp(34px,4.5vw,52px);letter-spacing:-1px;margin-bottom:40px;}
  .contact-cols{display:grid;grid-template-columns:.82fr 1fr;gap:56px;align-items:start;}
  .contact-photo img{width:100%;height:auto;display:block;filter:grayscale(1) contrast(1.03);}
  .contact-details{margin-top:24px;}
  .cd-lbl{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--red);margin:18px 0 4px;}
  .contact-details p{font-size:14px;line-height:1.65;color:var(--taupe);margin:0;}
  .contact-details a{color:var(--red);}
  .contact-formwrap h2{font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.5px;margin-bottom:24px;}
  .tri-form input,.tri-form textarea{width:100%;font-family:var(--sans);font-size:14px;color:var(--ink);background:#fff;border:1px solid var(--hair);padding:14px 16px;margin-bottom:14px;transition:border-color .2s;}
  .tri-form input:focus,.tri-form textarea:focus{outline:none;border-color:var(--red);}
  .tri-form .f-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .tri-form .has-err{border-color:var(--red);background:#FBF3F2;}
  .tri-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden;}
  .f-captcha{display:flex;align-items:center;gap:14px;margin:2px 0 20px;}
  .f-captcha label{font-size:14px;color:var(--taupe);white-space:nowrap;}
  .f-captcha strong{color:var(--ink);}
  .f-captcha input{width:110px;margin-bottom:0;}
  .form-submit{background:var(--red);color:#fff;border:none;padding:15px 34px;font-family:var(--sans);font-size:12px;letter-spacing:1.6px;text-transform:uppercase;cursor:pointer;transition:background .3s ease,transform .3s ease;}
  .form-submit:hover{background:var(--red-deep);transform:translateY(-1px);}
  .form-ok{background:#EEF6EE;border:1px solid #CDE6CD;color:#2E6B2E;padding:16px 18px;font-size:14px;line-height:1.5;}
  .form-err{background:#FBF3F2;border:1px solid #E8877F;color:var(--red);padding:13px 16px;font-size:14px;margin-bottom:18px;}
  @media(max-width:820px){.contact-cols{grid-template-columns:1fr;gap:34px;}.tri-form .f-row{grid-template-columns:1fr;}.f-captcha{flex-wrap:wrap;}}
  @media(max-width:680px){.contact-page{padding:108px 0 60px;}}

  /* ===== Bandeau de crédibilité + fusion manifeste ===== */
  .hero-grid{display:block;}
  .hero-bottom{display:block;}
  .hero-lede{max-width:none;}
  .manifesto p{max-width:none;}
  @media(min-width:821px){.hero-lede{text-align:justify;}.manifesto p{text-align:justify;}}
  .stats-band{background:var(--paper);border-top:1px solid var(--line);border-bottom:none;margin-top:66px;padding:64px 0 48px;}
  .manifesto{margin-top:0;border-top:none;padding-top:0;}
  .manifesto .wrap{border-top:1px solid var(--hair);padding-top:48px;}
  .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);}
  .stat-item{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 30px;}
  .stat-item:not(:last-child)::after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px;height:70px;background:var(--hair);}
  .stat-big{display:flex;align-items:center;justify-content:center;min-height:88px;font-family:var(--serif);font-weight:300;color:var(--ink);font-size:clamp(25px,2.7vw,36px);line-height:1.1;letter-spacing:-.5px;}
  .stat-num{font-size:clamp(34px,3.8vw,48px);letter-spacing:-1.7px;line-height:1;}
  .stat-txt{max-width:11ch;}
  .stat-lbl{margin-top:18px;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--taupe);line-height:1.45;max-width:17ch;}
  @media(max-width:820px){.stats-band{padding:44px 0 30px;}.stats-grid{grid-template-columns:1fr 1fr;row-gap:36px;}.stat-item{padding:0 14px;}.stat-big{min-height:70px;}.stat-item:not(:last-child)::after{display:none;}}
  /* Cabinet : 2 photos pleine largeur, adresse dessous */
  @media(min-width:721px){.cab-shots{grid-template-columns:1fr 1fr;gap:26px;}}
  .cab-addr{grid-column:1 / -1;align-self:auto;padding-left:0;border-left:none;border-top:2px solid var(--red);padding-top:18px;margin-top:6px;}


/* =================================================================
   v4.1 — SYSTÈME COULEUR + RÉGLAGES (blanc, rouges #940B05/#CB4A38,
   sections II/IV photo N&B, KPI cartes claires, logos réalisations)
   ================================================================= */
/* ============ ROUGES UNIFORMES : clair=RD partout / sombre=RL (II & IV) ============ */
:root{--paper:#ffffff;--hair:#EAE4DB;--red:#940B05;--red-deep:#940B05;}
body{background:#ffffff !important;}
header,.hero{background:#ffffff !important;}
.hero-title em{color:#940B05 !important;}
.kicker .rule,.hero-rule{background:#940B05 !important;}
/* ===== Crédibilité : cartes ROUGE (RD) dynamiques ===== */
.stats-band,.manifesto{background:#ffffff !important;}
.stats-band{border-top:none !important;border-bottom:none !important;padding:74px 0 34px !important;}
.stats-grid{gap:18px !important;}
.stat-item{background:#181310 !important;border:1px solid rgba(255,255,255,.08) !important;border-top:2px solid #CB4A38 !important;border-radius:6px !important;padding:38px 18px 32px !important;box-shadow:0 22px 46px -26px rgba(20,15,12,.55) !important;transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s cubic-bezier(.16,1,.3,1) !important;}
.stat-item::after{display:none !important;}
.stat-item:hover{transform:translateY(-8px) !important;box-shadow:0 34px 60px -24px rgba(20,15,12,.7) !important;}
.stat-item .stat-big{transition:transform .45s cubic-bezier(.16,1,.3,1) !important;}
.stat-item:hover .stat-big{transform:scale(1.05) !important;}
.stats-band .stat-big,.stats-band .stat-num{color:#ffffff !important;}
.stats-band .stat-lbl{color:#B7ABA0 !important;}
.manifesto{padding-top:26px !important;padding-bottom:96px !important;}
.manifesto .wrap{border-top:none !important;padding-top:0 !important;}
.manifesto p{color:var(--ink) !important;text-align:center !important;max-width:1000px !important;margin:0 auto !important;}
.manifesto .gm,.manifesto em{color:#940B05 !important;}
/* ===== Cartes Expertise (liseré RD) ===== */
.exp-card{background:#ffffff !important;border:1px solid #EEE8DF !important;border-top:2px solid #940B05 !important;box-shadow:0 16px 38px -24px rgba(20,18,16,.16) !important;}
/* ===== SECTION II — MÉTHODE : photo N&B, accents rouge clair RL ===== */
.methode{position:relative !important;background:#141210 !important;border-top:1px solid var(--line) !important;border-bottom:1px solid var(--line) !important;}
.methode::before{content:"" !important;position:absolute !important;inset:0 !important;background:url(perspective_bureaux.jpg) center/cover no-repeat !important;filter:grayscale(100%) contrast(1.05) brightness(.46) !important;z-index:0 !important;}
.methode .wrap{position:relative !important;z-index:1 !important;}
.methode .sec-head h2{color:#fff !important;}
.methode .sec-idx{color:#CB4A38 !important;}
.methode .sec-idx .of,.methode .note,.methode .sec-tag{color:#C9BEB3 !important;}
.steps{background:transparent !important;border:none !important;gap:14px !important;}
.step{background:rgba(20,15,12,.62) !important;-webkit-backdrop-filter:blur(6px) !important;backdrop-filter:blur(6px) !important;border:1px solid rgba(255,255,255,.12) !important;box-shadow:0 18px 40px -22px rgba(0,0,0,.6) !important;}
.step .n{color:#CB4A38 !important;}
.step h4{color:#fff !important;}
.step p{color:#D8CDC1 !important;}
.methode .big-idx{color:#fff !important;opacity:.05 !important;}
/* ===== SECTION IV — CABINET : accents rouge clair RL (uniforme avec II) ===== */
.cabinet .sec-idx{color:#CB4A38 !important;}
/* ===== Contact / Équipe : blanc, accents RD ===== */
.contact{background:#ffffff !important;}
.team{background:#ffffff !important;color:var(--ink) !important;}
.team .sec-head h2{color:var(--ink) !important;}
.team .sec-idx{color:#940B05 !important;}
.team .sec-idx .of{color:var(--taupe) !important;}
.team .kicker,.team .sec-head .note,.team .sec-tag{color:var(--taupe) !important;}
.member{background:#ffffff !important;border-color:#EEE8DF !important;}
.member h3{color:var(--ink) !important;}
.member .role{color:#940B05 !important;}
.member .bio{color:var(--taupe) !important;}
.member .bio-link,.member a.link{color:#940B05 !important;}
.member .m-ico{color:#940B05 !important;}
.member .photo.ph{background:#ffffff !important;border:1px solid #EEE8DF !important;}
.member .photo.ph .mono{color:#DBD2C7 !important;}
.member .photo.ph .soon{color:var(--taupe) !important;}
.member .photo img{filter:none !important;}
.rz-cell img{filter:none !important;opacity:1 !important;}

/* ===== Composition premium : hero → KPI → citation ===== */
.stats-band{margin-top:0 !important;padding:102px 0 60px !important;}
.stats-grid{gap:20px !important;}
.stat-item{padding:42px 20px 36px !important;}
.stat-item .stat-big{min-height:92px !important;}
.stat-item .stat-lbl{margin-top:20px !important;}
.manifesto{padding:60px 0 116px !important;}
.manifesto .wrap::before{content:"" !important;display:block !important;width:52px !important;height:2px !important;background:#940B05 !important;margin:0 auto 36px !important;}
.manifesto p{font-size:clamp(26px,3.1vw,40px) !important;line-height:1.4 !important;max-width:980px !important;letter-spacing:-.3px !important;}

/* ===== KPI adoucis : espresso chaud, arrondi, accent rouge délicat ===== */
.stat-item{background:linear-gradient(158deg,#2C2421 0%,#1E1714 100%) !important;border:1px solid rgba(255,255,255,.06) !important;border-top:1px solid rgba(255,255,255,.11) !important;border-radius:9px !important;padding:50px 22px 40px !important;box-shadow:0 30px 58px -30px rgba(30,20,15,.5) !important;}
.stat-item::before{content:"" !important;position:absolute !important;top:28px !important;left:50% !important;transform:translateX(-50%) !important;width:26px !important;height:2px !important;background:#CB4A38 !important;border-radius:2px !important;}
.stat-item:hover{transform:translateY(-6px) !important;box-shadow:0 44px 76px -32px rgba(30,20,15,.62) !important;}
.stats-band .stat-big,.stats-band .stat-num{color:#FBF7F1 !important;}
.stats-band .stat-lbl{color:#A99E92 !important;}
.stat-item .stat-big{min-height:80px !important;}

/* ============ RETOUCHE : haut de page reposé + KPI cartes claires + photo Méthode lisible ============ */
/* --- KPI : cartes CLAIRES minimalistes (fin du style espresso) --- */
.stats-band{background:#ffffff !important;margin-top:0 !important;padding:92px 0 0 !important;}
.stats-grid{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:16px !important;}
.stat-item{background:#ffffff !important;border:1px solid #EAE4DB !important;border-top:2px solid #940B05 !important;border-radius:8px !important;box-shadow:0 14px 32px -26px rgba(20,18,16,.22) !important;padding:34px 22px 28px !important;display:flex !important;flex-direction:column !important;align-items:center !important;text-align:center !important;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1) !important;}
.stat-item::before{display:none !important;}
.stat-item::after{display:none !important;}
.stat-item:hover{transform:translateY(-5px) !important;box-shadow:0 26px 44px -26px rgba(20,18,16,.28) !important;}
.stat-item .stat-big,.stats-band .stat-big,.stats-band .stat-num{color:#141210 !important;font-family:var(--serif) !important;font-weight:300 !important;font-size:clamp(25px,2.6vw,37px) !important;letter-spacing:-.5px !important;min-height:56px !important;transform:none !important;transition:none !important;}
.stat-item:hover .stat-big{transform:none !important;}
.stats-band .stat-lbl{margin-top:14px !important;color:#8A7F74 !important;font-size:11px !important;letter-spacing:1.4px !important;}

/* --- Citation : reliée aux chiffres, calibre reposé (moins "slab" isolé) --- */
.manifesto{background:#ffffff !important;padding:56px 0 100px !important;}
.manifesto .wrap{border-top:none !important;padding-top:0 !important;}
.manifesto .wrap::before{content:"" !important;display:block !important;width:46px !important;height:2px !important;background:#940B05 !important;margin:0 auto 28px !important;}
.manifesto p{color:#141210 !important;text-align:center !important;font-family:var(--serif) !important;font-weight:300 !important;font-size:clamp(23px,2.7vw,35px) !important;line-height:1.42 !important;letter-spacing:-.3px !important;max-width:880px !important;margin:0 auto !important;}
.manifesto .gm,.manifesto em{color:#940B05 !important;}

/* --- Section II Méthode : photo des archives PLUS HAUTE et PLUS LISIBLE --- */
.methode{padding:132px 0 !important;}
.methode::before{filter:grayscale(100%) contrast(1.02) brightness(.6) !important;background-position:center 38% !important;}
.methode::after{content:"" !important;position:absolute !important;inset:0 !important;background:linear-gradient(180deg,rgba(20,15,12,.42),rgba(20,15,12,.34)) !important;z-index:0 !important;}
.methode .wrap{position:relative !important;z-index:1 !important;}




/* ===== VIE AU HAUT : filigrane parallaxe + accents rouges vivants ===== */
.hero{position:relative !important;overflow:hidden !important;}
.hero .wrap{position:relative !important;z-index:1 !important;}
/* filet du hero qui se trace */
.hero-rule{width:0 !important;transition:width 1.05s cubic-bezier(.16,1,.3,1) .55s !important;}
body.loaded .hero-rule{width:132px !important;}
/* KPI : chiffre qui vient en rouge + liseré haut qui s'affirme au survol */
.stat-item{transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-top-color .4s ease !important;}
.stat-item .stat-big{transition:color .35s ease !important;}
.stat-item:hover{border-top-color:#CB4A38 !important;}
.stat-item:hover .stat-big{color:#940B05 !important;}
/* petit filet rouge de rappel qui se trace au survol, en bas de carte */
.stat-item{position:relative !important;}


/* ===== HAUT : halo chaud + filigrane citation + compteurs ===== */
/* halo chaud qui respire derrière le titre */
/* second filigrane : guillemet géant derrière la citation, en parallaxe */
.manifesto{position:relative !important;overflow:hidden !important;}
.manifesto .wrap{position:relative !important;z-index:1 !important;}








/* logos affichés dans la liste des autres opérations */
.rz-ologos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:20px 34px;padding:20px 6px 28px;margin:14px 0 26px;border-top:1px solid #EAE4DB;border-bottom:1px solid #EAE4DB;}
.rz-ologos img{height:30px;width:auto;max-width:120px;object-fit:contain;opacity:.92;}
/* KPI : filet rouge identique et net sur les 4 cartes (lève l'empilement de règles) */
.stats-band .stat-item{border-top:2px solid #940B05 !important;}
.stats-band .stat-item::before{display:none !important;}


/* liste "Autres transactions" : logo par ligne, mise à l'échelle uniforme, zone vide si absent */
.rz-oitem{display:flex;flex-direction:column;}
.rz-ologo{height:40px;display:flex;align-items:center;justify-content:flex-start;margin-bottom:12px;}
.rz-ologo img{max-height:38px;max-width:132px;width:auto;height:auto;object-fit:contain;}


/* ============================================================
   v4.1 — AUDIT MOBILE : corrections d'usage sur téléphone
   ============================================================ */
@media(max-width:820px){
  /* KPI : réellement en 2 colonnes (corrige le débordement horizontal) + plus compactes */
  .stats-band .stats-grid{grid-template-columns:1fr 1fr !important;gap:12px !important;}
  .stats-band .stat-item{padding:24px 14px 20px !important;}
  .stats-band .stat-item .stat-big{min-height:0 !important;font-size:clamp(22px,6.4vw,30px) !important;}
  .stats-band .stat-item .stat-lbl{margin-top:10px !important;}
  .stats-band{padding:56px 0 0 !important;}
  /* garde-fou : rien ne dépasse la largeur de l'écran */
  html,body{overflow-x:hidden !important;}
}
@media(max-width:480px){
  /* header opaque sur mobile (plus de contenu qui transparaît au scroll) */
  header{background:#ffffff !important;}
  /* citation un cran plus petite pour respirer */
  .manifesto p{font-size:clamp(21px,5.6vw,28px) !important;}
}

/* ===== LOGO SVG (en-tête couleur + pied de page en blanc) — tailles ajustées ===== */
.nav{height:104px !important;}
.brand{align-items:center !important;}
.brand .brand-logo{height:54px;width:auto;display:block;}
.foot-logo-img{height:50px;width:auto;display:block;filter:brightness(0) invert(1);}
@media(max-width:820px){.nav{height:80px !important;}.brand .brand-logo{height:44px;}.foot-logo-img{height:42px;}}
@media(max-width:480px){.nav{height:66px !important;}.brand .brand-logo{height:38px;}.foot-logo-img{height:38px;}}

/* Citation : même largeur que le bloc (accroche + KPI) */
.manifesto p{max-width:none !important;}

/* ================================================================
   v5.3 — ZONE HAUTE EN PHOTO N&B (À propos) + SECTION II HARMONISÉE
   ================================================================ */
/* Zone haute : hero + chiffres + citation sur photo N&B */
.credfield{position:relative;overflow:hidden;}
.credfield::before{content:"";position:absolute;inset:0;z-index:0;background:url(entree-bureaux.jpg) center/cover no-repeat;filter:grayscale(100%) contrast(1.03) brightness(.4);}
.credfield::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(18,14,11,.52),rgba(18,14,11,.46));}
.credfield .hero,.credfield .stats-band,.credfield .manifesto{position:relative !important;z-index:1 !important;background:transparent !important;}
/* Hero : texte clair sur le fond sombre */
.credfield .hero .kicker span:last-child{color:#C9BEB3 !important;}
.credfield .hero .kicker .rule{background:#CB4A38 !important;}
.credfield .hero-title{color:#FBF7F1 !important;}
.credfield .hero-title em{color:#E8877F !important;}
.credfield .hero-rule{background:#CB4A38 !important;}
.credfield .hero-lede{color:#D8CDC1 !important;}
/* Cartes KPI = verre dépoli */
.credfield .stat-item{background:rgba(20,15,12,.5) !important;-webkit-backdrop-filter:blur(7px) !important;backdrop-filter:blur(7px) !important;border:1px solid rgba(255,255,255,.14) !important;border-top:2px solid #CB4A38 !important;box-shadow:0 24px 50px -24px rgba(0,0,0,.65) !important;}
.credfield .stats-band .stat-big,.credfield .stats-band .stat-num,.credfield .stat-item .stat-big{color:#FBF7F1 !important;}
.credfield .stats-band .stat-lbl{color:#C9BEB3 !important;}
/* Citation claire */
.credfield .manifesto p{color:#F1EAE2 !important;}
.credfield .manifesto .gm,.credfield .manifesto em{color:#E8877F !important;}
.credfield .manifesto .wrap::before{background:#CB4A38 !important;}
/* Cartes non-interactives (retire l'aspect cliquable) */
.stat-item,.exp-card,.step{cursor:default !important;}
.stat-item:hover,.credfield .stat-item:hover{transform:none !important;}
.credfield .stat-item:hover .stat-big{color:#FBF7F1 !important;}
.credfield .stat-item:hover{border-top-color:#CB4A38 !important;box-shadow:0 24px 50px -24px rgba(0,0,0,.65) !important;}
.exp-card:hover{transform:none !important;box-shadow:0 16px 38px -24px rgba(20,18,16,.16) !important;}
.exp-card::before,.exp-card:hover::before{display:none !important;}
.step:hover{transform:none !important;}
.step::before,.step:hover::before{display:none !important;}
/* Section II : nouvelle photo galerie + cartes arrondies façon KPI */
.methode::before{background:url(bureau-galerie.jpg) center 60%/cover no-repeat !important;filter:grayscale(100%) contrast(1.03) brightness(.42) !important;}
.methode .step{background:rgba(20,15,12,.5) !important;-webkit-backdrop-filter:blur(7px) !important;backdrop-filter:blur(7px) !important;border:1px solid rgba(255,255,255,.14) !important;border-top:2px solid #CB4A38 !important;border-radius:8px !important;box-shadow:0 24px 50px -24px rgba(0,0,0,.65) !important;padding:32px 26px 30px !important;}
/* Section III : mention cliquable */
.rz-hint{text-align:center;font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:#940B05;margin:0 0 24px;font-weight:500;}

/* v5.4 — Photos cabinet encadrées comme les cartes KPI + statiques */
.cab-shots figure{background:rgba(20,15,12,.5) !important;-webkit-backdrop-filter:blur(7px) !important;backdrop-filter:blur(7px) !important;border:1px solid rgba(255,255,255,.14) !important;border-top:2px solid #CB4A38 !important;border-radius:8px !important;box-shadow:0 24px 50px -24px rgba(0,0,0,.65) !important;padding:10px !important;overflow:hidden !important;}
.cab-shots figure img{border-radius:4px !important;}
.cab-shots figure:hover img{transform:none !important;}

/* v5.5 — Sections photo N&B éclaircies d'environ 20% */
.credfield::before{filter:grayscale(100%) contrast(1.03) brightness(.48) !important;}
.credfield::after{background:linear-gradient(180deg,rgba(18,14,11,.42),rgba(18,14,11,.37)) !important;}
.methode::before{filter:grayscale(100%) contrast(1.03) brightness(.5) !important;}
.methode::after{background:linear-gradient(180deg,rgba(20,15,12,.34),rgba(20,15,12,.27)) !important;}
.cabinet .cab-bg img{filter:grayscale(100%) contrast(1.05) brightness(.55) !important;}
.cabinet .cab-bg::after{background:linear-gradient(180deg,rgba(20,18,16,.59),rgba(20,18,16,.4)) !important;}

/* v5.6 — Intitulés de section (kicker + libellés) plus visibles : gras + 15% plus gros */
.kicker{font-size:12.7px !important;font-weight:700 !important;}
.sec-idx .of{font-size:11.5px !important;font-weight:700 !important;}

/* v5.7 — Corps de texte +~17% sur PC (mobile inchangé), hors chiffres */
@media(min-width:821px){
  .hero-lede{font-size:20px !important;}
  .note{font-size:17px !important;}
  .sec-tag{font-size:19px !important;}
  .exp-card li{font-size:16px !important;}
  .step p{font-size:14.5px !important;}
  .member .bio{font-size:15px !important;}
  .member .role{font-size:13px !important;}
  .ledger-op,.ledger-co{font-size:16px !important;}
  .rz-oname{font-size:18px !important;}
  .rz-ometa,.rz-orole{font-size:12.5px !important;}
  .contact-info p{font-size:16px !important;}
  .foot-col a,.foot-top p{font-size:15px !important;}
  .member h3{font-size:25px !important;}
}
/* Bouton menu mobile (burger) en rouge Triportail */
.burger{color:#940B05 !important;}

/* v5.9 — Photos N&B encore éclaircies (garde le texte lisible) */
.credfield::before{filter:grayscale(100%) contrast(1.02) brightness(.6) !important;}
.credfield::after{background:linear-gradient(180deg,rgba(18,14,11,.34),rgba(18,14,11,.3)) !important;}
.methode::before{filter:grayscale(100%) contrast(1.02) brightness(.66) !important;}
.methode::after{background:linear-gradient(180deg,rgba(20,15,12,.26),rgba(20,15,12,.2)) !important;}
.cabinet .cab-bg img{filter:grayscale(100%) contrast(1.03) brightness(.7) !important;}
.cabinet .cab-bg::after{background:linear-gradient(180deg,rgba(20,18,16,.48),rgba(20,18,16,.3)) !important;}

/* v6.0 — VERSION CLAIRE validée : photos N&B lumineuses + texte renforcé */
.credfield::before,.methode::before{filter:grayscale(100%) contrast(1.0) brightness(.82) !important;}
.credfield::after{background:linear-gradient(180deg,rgba(15,12,10,.22),rgba(15,12,10,.14)) !important;}
.methode::after{background:linear-gradient(180deg,rgba(15,12,10,.20),rgba(15,12,10,.12)) !important;}
.cabinet .cab-bg img{filter:grayscale(100%) contrast(1.0) brightness(.86) !important;}
.cabinet .cab-bg::after{background:linear-gradient(180deg,rgba(15,12,10,.34),rgba(15,12,10,.2)) !important;}
.credfield .hero-title,.credfield .hero-lede,.methode .sec-head h2,.methode .note,.cabinet .sec-head h2,.cabinet .note{text-shadow:0 2px 14px rgba(0,0,0,.55) !important;}
.credfield .manifesto p{text-shadow:0 2px 12px rgba(0,0,0,.5) !important;}
.credfield .stat-item,.methode .step{background:rgba(20,15,12,.62) !important;}

/* v6.1 — lisibilité texte (halo sans boîte) + libellés de section + note Réalisations 1 ligne */
.credfield .hero-lede,.methode .note,.cabinet .note,.methode .sec-tag{color:#ffffff !important;font-weight:500 !important;}
.credfield .hero-lede,.credfield .manifesto p,
.methode .sec-head h2,.methode .note,.methode .sec-tag,
.cabinet .sec-head h2,.cabinet .note,.cabinet .cab-addr .lbl,.cabinet .cab-addr p{
  text-shadow:0 1px 2px rgba(0,0,0,.9), 0 1px 6px rgba(0,0,0,.75), 0 0 18px rgba(0,0,0,.55) !important;
}
.credfield .hero-title{text-shadow:0 2px 4px rgba(0,0,0,.55), 0 1px 14px rgba(0,0,0,.45) !important;}
.sec-idx .of{font-size:13px !important;letter-spacing:2.4px !important;}
@media(min-width:821px){ #registre .note{max-width:none !important;white-space:nowrap !important;} }
