:root{
  --ink:#0b2745;--muted:#607086;--line:#e9eef4;--green:#31b58b;--bg:#f7f9fb;
  --max:1180px;--header-h:92px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#172033;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 48px));margin:auto}.site-header{position:sticky;top:0;z-index:50;height:var(--header-h);background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:34px}.brand{display:flex;align-items:center;gap:22px;min-width:390px}.brand img{height:56px;width:auto;object-fit:contain}.brand-sep{width:1px;height:42px;background:#9aa9bb}.brand-claim{font-weight:700;font-size:16px;line-height:1.15;color:var(--ink);letter-spacing:-.02em}.nav{display:flex;align-items:center;gap:30px;white-space:nowrap}.nav a{font-weight:700;font-size:15px;color:#203a5f;position:relative;padding:36px 0 34px}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:18px;height:3px;border-radius:6px;background:var(--green)}.lang{display:flex;gap:10px;color:#66738a;font-weight:700}.lang a.active{color:var(--green)}.hero{position:relative;min-height:470px;display:flex;align-items:center;overflow:hidden;background:#071323}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,11,20,.82),rgba(2,11,20,.42) 48%,rgba(2,11,20,.18))}.hero .container{position:relative;color:#fff;padding:78px 0}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#78d8bd;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:12px}.hero h1{font-size:clamp(48px,7vw,82px);line-height:.94;margin:18px 0 20px;letter-spacing:-.06em}.hero p{font-size:clamp(20px,2.2vw,28px);line-height:1.35;max-width:760px;color:rgba(255,255,255,.9);font-weight:500}.breadcrumb{margin-top:36px;font-weight:700;color:rgba(255,255,255,.78)}.breadcrumb span{color:var(--green);padding:0 10px}.section{padding:86px 0}.section.soft{background:var(--bg)}.section h2{font-size:clamp(34px,4vw,54px);line-height:1.02;letter-spacing:-.045em;color:#0e1f33;margin:0 0 22px}.lead{font-size:20px;line-height:1.6;color:#45566d;max-width:880px}.grid{display:grid;gap:24px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:0 18px 45px rgba(16,40,70,.07)}.card h3{font-size:22px;line-height:1.2;color:#102944;margin:0 0 12px;letter-spacing:-.025em}.card p,.card li{color:#52637a;line-height:1.65}.card ul{margin:0;padding-left:18px}.media-card{overflow:hidden;padding:0}.media-card img{height:225px;width:100%;object-fit:cover}.media-card .pad{padding:28px}.split{display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center}.image-panel{border-radius:28px;overflow:hidden;box-shadow:0 25px 70px rgba(11,39,69,.16);background:#dce4e9}.image-panel img{width:100%;height:430px;object-fit:cover}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}.kpi{border-left:3px solid var(--green);background:#fff;padding:20px;border-radius:16px}.kpi b{display:block;font-size:30px;color:var(--ink);letter-spacing:-.04em}.kpi span{color:var(--muted);font-weight:650}.steps{counter-reset:step}.step{position:relative;padding-left:64px}.step:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:0;width:42px;height:42px;border-radius:50%;background:var(--ink);color:white;display:grid;place-items:center;font-weight:800}.cta{background:#071829;color:white;border-radius:32px;padding:48px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{color:#fff;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;border-radius:999px;background:var(--green);color:#fff;font-weight:800;border:0}.footer{background:#061423;color:#dce7f0;padding:54px 0}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:30px}.footer img{height:54px;width:auto}.footer h4{color:white;margin:0 0 14px}.footer p,.footer a{color:#b8c8d8;line-height:1.7}.mobile-toggle{display:none}
@media(max-width:1020px){:root{--header-h:auto}.site-header{height:auto}.header-inner{min-height:86px;flex-wrap:wrap;padding:12px 0}.brand{min-width:0}.nav{order:3;width:100%;overflow-x:auto;border-top:1px solid var(--line);padding-top:10px}.nav a{padding:12px 0 14px}.nav a.active:after{bottom:4px}.grid-3{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.hero{min-height:420px}}
@media(max-width:680px){.container{width:min(100% - 28px,var(--max))}.brand img{height:46px}.brand-sep,.brand-claim{display:none}.nav{gap:18px}.hero h1{font-size:44px}.section{padding:60px 0}.grid-3,.grid-2,.kpis{grid-template-columns:1fr}.cta{display:block;padding:32px}.footer-grid{grid-template-columns:1fr}.image-panel img{height:300px}}

/* Bilingual update: imagery, technology diagrams and contact forms */
.process-visual{margin-top:34px;border:1px solid var(--line);border-radius:28px;overflow:hidden;background:#fff;box-shadow:0 18px 45px rgba(16,40,70,.07)}
.process-visual img{width:100%;height:auto;display:block}.form-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:0 18px 45px rgba(16,40,70,.07)}.contact-form{display:grid;gap:16px}.contact-form label{font-weight:750;color:#102944;font-size:14px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;margin-top:8px;border:1px solid #dbe4ee;border-radius:14px;padding:14px 15px;font:inherit;color:#172033;background:#fbfdff}.contact-form textarea{min-height:150px;resize:vertical}.contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-note{font-size:13px;color:#607086;line-height:1.5}.legal-block{max-width:920px}.legal-block h3{font-size:22px;margin:34px 0 10px;color:#102944}.legal-block p,.legal-block li{color:#52637a;line-height:1.7}.legal-block ul{padding-left:20px}.production-strip{margin-top:34px;display:grid;grid-template-columns:1fr 1fr;gap:24px}.production-strip img{height:320px;width:100%;object-fit:cover;border-radius:24px;box-shadow:0 18px 45px rgba(16,40,70,.08)}
@media(max-width:680px){.contact-form .form-row,.production-strip{grid-template-columns:1fr}.form-card{padding:24px}.production-strip img{height:240px}}

/* Scientific references */
.refs-grid{display:grid;gap:22px;margin-top:36px}.ref-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 18px 45px rgba(16,40,70,.06)}.ref-card .tag{display:inline-flex;margin-bottom:12px;border-radius:999px;background:#eaf7f2;color:#116b53;font-weight:800;font-size:12px;padding:7px 11px;text-transform:uppercase;letter-spacing:.05em}.ref-card h3{font-size:22px;line-height:1.25;color:#102944;margin:0 0 10px}.ref-meta{color:#607086;font-weight:650;line-height:1.55;margin-bottom:10px}.ref-card p{color:#52637a;line-height:1.65}.ref-card .btn{margin-top:8px;background:#0b2745}.note-small{margin-top:22px;color:#607086;font-size:14px;line-height:1.6}


/* v5: stronger hero readability on bright field photos */
.hero>img{filter:saturate(.98) contrast(1.04) brightness(.82)}
.hero:before{background:linear-gradient(90deg,rgba(2,11,20,.90),rgba(2,11,20,.62) 45%,rgba(2,11,20,.32) 72%,rgba(2,11,20,.18))}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,.08) 38%,rgba(0,0,0,.22));pointer-events:none}
.hero .container{z-index:1}.hero h1,.hero p,.breadcrumb,.eyebrow{text-shadow:0 2px 18px rgba(0,0,0,.45)}



/* v9 optimisation visuelle + lisibilité */
.hero{
  background:#071323;
}
.hero>img{
  filter:saturate(1.03) contrast(1.08) brightness(.78);
  transform:scale(1.01);
}
.hero:before{
  background:
    radial-gradient(circle at 18% 45%, rgba(0,0,0,.72) 0%, rgba(0,0,0,.52) 30%, rgba(0,0,0,.22) 58%, rgba(0,0,0,.10) 100%),
    linear-gradient(90deg,rgba(2,11,20,.88),rgba(2,11,20,.58) 44%,rgba(2,11,20,.30) 72%,rgba(2,11,20,.16));
}
.hero:after{
  background:
    linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.07) 38%,rgba(0,0,0,.24)),
    linear-gradient(0deg,rgba(0,0,0,.16),rgba(0,0,0,0) 38%);
}
.hero h1,.hero p,.breadcrumb,.eyebrow{
  text-shadow:0 3px 24px rgba(0,0,0,.66),0 1px 2px rgba(0,0,0,.45);
}
.hero p{
  color:rgba(255,255,255,.94);
}
.image-panel img,.media-card img,.production-strip img{
  filter:saturate(1.04) contrast(1.04) brightness(1.015);
}
.image-panel{
  box-shadow:0 24px 65px rgba(6,28,50,.18);
}
.card{
  box-shadow:0 14px 38px rgba(16,40,70,.065);
}
.card:hover{
  transform:translateY(-2px);
  transition:transform .18s ease, box-shadow .18s ease;
  box-shadow:0 20px 54px rgba(16,40,70,.09);
}
.references-hero-natural,
.hero img[src*="references-hero-natural"]{
  object-position:center 54%;
}
.hero img[src*="approach-microbiome-lab-green"]{
  object-position:center 58%;
}
.hero img[src*="culture-vigne"]{
  object-position:center center;
}
.hero img[src*="hero-arboriculture"]{
  object-position:center center;
}
.hero img[src*="technology-petri"]{
  object-position:center center;
}
@media(max-width:680px){
  .hero:before{
    background:linear-gradient(90deg,rgba(2,11,20,.92),rgba(2,11,20,.64) 60%,rgba(2,11,20,.34));
  }
  .hero>img{
    filter:saturate(1.02) contrast(1.08) brightness(.72);
  }
}
