:root { --ink:#111214; --paper:#f5f3ee; --white:#fff; --yellow:#ffd900; --muted:#a7a9ad; --line:#303237; --max:1200px; }
    * { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,Arial,sans-serif; } a { color:inherit; text-decoration:none; }
    .wrap { width:min(calc(100% - 48px),var(--max)); margin:auto; }.eyebrow { font-size:.72rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }.btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 21px; border:1px solid currentColor; font-size:.86rem; font-weight:600; transition:transform .22s ease, box-shadow .22s ease; }.btn:hover { transform:translateY(-2px); box-shadow:0 8px 20px rgba(0,0,0,.16); }.btn-yellow { background:var(--yellow); border-color:var(--yellow); color:var(--ink); }.btn-light { color:var(--white); }
    header { background:#090b0d; color:var(--white); position:sticky; top:0; z-index:4; border-top:8px solid var(--yellow); }.nav { height:80px; display:flex; align-items:center; justify-content:space-between; gap:28px; }.brand { display:flex; align-items:center; gap:12px; font-weight:800; letter-spacing:-.04em; font-size:1.2rem; }.brand-logo { display:block; width:118px; height:52px; object-fit:contain; }.links { display:flex; align-items:center; gap:25px; font-size:.83rem; font-weight:600; }.links a:hover, .links a.router-link-active { color:var(--yellow); }.site-search-link { width:42px; height:42px; display:grid; place-items:center; border:0; padding:0; background:transparent; color:#fff; font-size:2.05rem; line-height:1; transition:color .2s ease,transform .2s ease; }.site-search-link:hover { color:var(--yellow); transform:scale(1.08); }.nav .btn { min-height:42px; padding:0 15px; font-size:.78rem; }.menu { display:none; background:none; color:#fff; border:0; font:inherit; }
    .site-search-link { cursor:pointer; font-family:inherit; }.quick-search { position:fixed; inset:0; z-index:50; display:grid; place-items:start center; padding-top:110px; background:rgba(9,11,13,.78); }.quick-search-form { width:min(calc(100% - 48px),680px); height:62px; display:flex; align-items:center; gap:14px; padding:0 12px 0 19px; border:2px solid var(--yellow); background:#fff; color:var(--ink); box-shadow:0 24px 60px rgba(0,0,0,.28); }.quick-search-form > span { font-size:1.8rem; }.quick-search-form input { flex:1; min-width:0; border:0; outline:0; color:var(--ink); font:inherit; font-size:1.05rem; }.quick-search-form button { width:38px; height:38px; border:0; background:transparent; color:var(--ink); font:2rem/1 Arial,sans-serif; cursor:pointer; }
    .whatsapp-actions { display:grid; gap:10px; }.contact-card .whatsapp-actions .btn { width:100%; }.btn-whatsapp-alt { border-color:#fff; color:#fff; }.btn-whatsapp-alt:hover { border-color:var(--yellow); color:var(--yellow); }.contact-email-link { margin-top:7px; color:#c3c4c6; font-size:.78rem; text-align:center; text-decoration:underline; text-underline-offset:4px; }.contact-email-link:hover { color:var(--yellow); }
    .hero { background:var(--ink); color:var(--white); padding:80px 0 64px; overflow:hidden; }.hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:60px; align-items:center; }.hero .eyebrow { color:var(--yellow); }.hero h1 { max-width:650px; margin:17px 0 23px; font-size:clamp(2.55rem,4.2vw,4.75rem); font-weight:700; line-height:1.06; letter-spacing:-.06em; }.lead { max-width:530px; color:#d4d4d5; font-size:1rem; line-height:1.75; }.hero-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:30px; }.hero-visual { min-height:405px; position:relative; background:linear-gradient(145deg,#24262b,#151619 67%); overflow:hidden; }.hero-visual:before { content:""; position:absolute; width:260px; height:260px; border-radius:50%; background:var(--yellow); right:-115px; top:-85px; opacity:.95; }.machine { position:absolute; left:13%; bottom:15%; width:65%; height:54%; border:2px solid white; border-radius:14px 14px 40px 40px; animation:robot-travel 7s ease-in-out infinite; }.machine:before,.machine:after { content:""; position:absolute; background:white; }.machine:before { width:27%; height:27%; border:2px solid var(--yellow); border-radius:6px; left:36%; top:25%; }.machine:after { width:2px; height:74px; left:50%; top:-74px; }.eye { position:absolute; width:17px; height:17px; background:var(--yellow); border-radius:50%; top:15%; animation:signal 2.8s ease-in-out infinite; }.eye.one { left:19%; }.eye.two { right:19%; animation-delay:.25s; }.wheel { position:absolute; width:86px; height:86px; border:8px solid white; background:var(--ink); border-radius:50%; bottom:-43px; }.wheel.left { left:7%; }.wheel.right { right:7%; }.machine-label { position:absolute; bottom:25px; left:24px; z-index:2; color:var(--yellow); letter-spacing:.08em; font-size:.66rem; font-weight:600; }.scanline { position:absolute; height:1px; left:0; right:0; background:rgba(255,217,0,.75); box-shadow:0 0 15px rgba(255,217,0,.65); animation:scan 5s linear infinite; }.ticker { position:absolute; width:100%; bottom:0; padding:14px 0; overflow:hidden; border-top:1px solid rgba(255,255,255,.17); color:#d8d8d8; white-space:nowrap; font-size:.7rem; font-weight:600; letter-spacing:.12em; }.ticker span { display:inline-block; padding-left:100%; animation:ticker 16s linear infinite; } @keyframes robot-travel { 0%,100% { transform:translateX(-8px); } 50% { transform:translateX(16px); } } @keyframes signal { 0%,100% { opacity:.55; transform:scale(.9); } 50% { opacity:1; transform:scale(1.1); } } @keyframes scan { from { top:12%; } to { top:87%; } } @keyframes ticker { to { transform:translateX(-100%); } }
    .proof { background:var(--yellow); padding:22px 0; }.proof .wrap { display:flex; justify-content:space-between; flex-wrap:wrap; gap:15px 28px; font-weight:800; font-size:.78rem; letter-spacing:.02em; }.section { padding:106px 0; }.section-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:46px; }.section h2 { margin:10px 0 0; max-width:670px; font-size:clamp(2rem,4vw,3.7rem); line-height:1.05; letter-spacing:-.06em; }.section-intro { max-width:365px; color:#5c5f65; line-height:1.65; font-size:.95rem; }
    .expertise { background:var(--white); }.expertise-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #d9d7d2; }.expertise-card { padding:30px 25px 34px; min-height:265px; border-right:1px solid #d9d7d2; transition:transform .24s ease, box-shadow .24s ease; }.expertise-card:last-child { border-right:0; }.expertise-card:hover { position:relative; z-index:1; transform:translateY(-7px); box-shadow:0 17px 28px rgba(17,18,20,.1); }.icon { width:42px; height:42px; margin:10px 0 24px; border:1px solid var(--ink); display:grid; place-items:center; font-size:1.1rem; }.expertise h3 { margin:0 0 12px; font-size:1.02rem; letter-spacing:-.03em; }.expertise p { margin:0; color:#606269; font-size:.88rem; line-height:1.65; }
    .projects { background:var(--ink); color:var(--white); }.projects .section-intro { color:#b7b8bb; }.projects .eyebrow { color:var(--yellow); }.project-grid { display:grid; grid-template-columns:1.25fr .75fr .75fr; gap:16px; }.project { min-height:380px; position:relative; padding:25px; display:flex; flex-direction:column; justify-content:end; overflow:hidden; background:#24262a; transition:transform .24s ease, box-shadow .24s ease; }.project:hover { transform:translateY(-7px); box-shadow:0 18px 28px rgba(0,0,0,.25); }.project:before { content:""; position:absolute; inset:0; opacity:.6; background:linear-gradient(145deg,transparent 35%,#08090b); }.project:first-child { background:linear-gradient(135deg,#373112,#151619 62%); }.project:nth-child(2) { background:linear-gradient(155deg,#2b2e32,#111214); }.project:nth-child(3) { background:linear-gradient(135deg,#3b3c3f,#161719 57%); }.project:after { content:""; position:absolute; width:180px; height:180px; right:-65px; top:-65px; border:28px solid var(--yellow); border-radius:50%; }.project > * { z-index:1; }.tag { align-self:flex-start; padding:7px 9px; background:var(--yellow); color:var(--ink); font-size:.64rem; font-weight:700; letter-spacing:.07em; }.project h3 { margin:80px 0 8px; font-size:1.35rem; letter-spacing:-.04em; }.project p { margin:0; color:#d3d4d5; font-size:.86rem; line-height:1.55; }.project-link { display:inline-flex; align-self:flex-start; margin-top:18px; border:1px solid var(--yellow); padding:10px 12px; color:var(--yellow); font-size:.8rem; font-weight:700; }
    .academy { background:#e7e3d9; }.academy-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:64px; align-items:center; }.academy-art { min-height:390px; padding:27px; display:grid; grid-template-columns:1fr 1fr; gap:10px; background:var(--yellow); }.academy-art div { background:var(--ink); position:relative; }.academy-art div:before { content:""; position:absolute; background:var(--yellow); width:28%; aspect-ratio:1; border-radius:50%; left:36%; top:36%; }.academy-art div:nth-child(2) { background:#f8f7f3; }.academy-art div:nth-child(2):before { background:var(--ink); border-radius:0; }.academy-copy h2 { margin:10px 0 18px; font-size:clamp(2rem,4vw,3.4rem); line-height:1.04; letter-spacing:-.06em; }.academy-copy p { color:#55585c; line-height:1.7; }.path { display:grid; grid-template-columns:repeat(2,1fr); gap:0; margin:25px 0 30px; }.path div { border-top:1px solid #aaa79e; padding:13px 0; font-size:.87rem; font-weight:700; }
    .method { background:var(--white); }.steps { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid #d9d7d2; }.step { padding:25px 20px 5px 0; min-height:158px; border-right:1px solid #d9d7d2; transition:transform .24s ease, box-shadow .24s ease; }.step:hover { position:relative; z-index:1; transform:translateY(-6px); box-shadow:0 14px 24px rgba(17,18,20,.09); }.step:not(:first-child) { padding-left:20px; }.step:last-child { border-right:0; }.step h3 { margin:9px 0 8px; font-size:1rem; }.step p { margin:0; max-width:190px; color:#696b70; font-size:.8rem; line-height:1.55; }
    .about { padding:100px 0; background:var(--yellow); }.about-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:70px; }.about h2 { margin:12px 0 0; font-size:clamp(2.15rem,3.8vw,3.9rem); line-height:1.06; letter-spacing:-.055em; }.about-copy { font-size:1.02rem; line-height:1.75; }.about-list { margin:28px 0 0; padding:0; list-style:none; border-top:1px solid rgba(0,0,0,.4); }.about-list li { display:flex; justify-content:space-between; padding:15px 0; border-bottom:1px solid rgba(0,0,0,.4); font-size:.88rem; font-weight:700; }.about-list span { font-size:.68rem; color:#5c4e00; }
    .contact { background:var(--ink); color:var(--white); padding:106px 0; }.contact-grid { display:grid; grid-template-columns:1fr .85fr; gap:80px; }.contact h2 { margin:10px 0 17px; max-width:620px; font-size:clamp(2.35rem,4.2vw,4.2rem); line-height:1.04; letter-spacing:-.06em; }.contact p { max-width:530px; color:#c3c4c6; line-height:1.7; }.contact-options { display:grid; gap:0; border-top:1px solid #494b50; }.contact-options a { padding:18px 0; display:flex; justify-content:space-between; gap:12px; border-bottom:1px solid #494b50; font-weight:700; }.contact-options a:hover { color:var(--yellow); }.contact-options a span { display:none; }.contact-card { background:#25272b; padding:33px; }.contact-card h3 { margin:0 0 13px; font-size:1.4rem; letter-spacing:-.05em; }.contact-card p { font-size:.9rem; margin-bottom:27px; }.contact-card .btn { width:100%; }
    footer { background:#090b0d; color:#a6a8ab; border-top:1px solid #34363a; font-size:.78rem; }.footer-main { display:grid; grid-template-columns:1fr 1.4fr .6fr; gap:50px; padding:48px 0 42px; }.footer-main div { display:grid; align-content:start; gap:11px; }.footer-main strong { color:#fff; font-size:1rem; }.footer-main b { color:var(--yellow); font-size:.7rem; letter-spacing:.09em; text-transform:uppercase; }.footer-main p { max-width:410px; margin:0; line-height:1.65; }.footer-main a { color:#fff; }.footer-main a:hover { color:var(--yellow); }.partner-button { justify-self:start; border:1px solid var(--yellow); padding:11px 14px; color:var(--yellow) !important; font-size:.74rem; font-weight:700; }.partner-button:hover { background:var(--yellow); color:#090b0d !important; }.social-link { width:max-content; }.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding:20px 0; border-top:1px solid #34363a; color:#85878a; font-size:.7rem; }
    @media (max-width:850px) { .links { display:none; }.menu { display:block; }.hero-grid,.academy-grid,.about-grid,.contact-grid { grid-template-columns:1fr; gap:42px; }.hero { padding-top:64px; }.hero-visual { min-height:330px; }.expertise-grid { grid-template-columns:repeat(2,1fr); }.expertise-card:nth-child(2) { border-right:0; }.expertise-card:nth-child(-n+2) { border-bottom:1px solid #d9d7d2; }.project-grid { grid-template-columns:1fr 1fr; }.project:first-child { grid-column:span 2; }.steps { grid-template-columns:repeat(2,1fr); }.step:nth-child(2) { border-right:0; }.step:nth-child(-n+4) { border-bottom:1px solid #d9d7d2; }.step:nth-child(3) { padding-left:0; } }
    .hero .eyebrow,.section .eyebrow,.academy .eyebrow,.about .eyebrow,.contact .eyebrow,.project .tag,.proof { display:none; }.number,.path span,.arrow { display:none; } .links.open { display:flex; position:absolute; top:80px; left:0; right:0; padding:20px 24px; flex-direction:column; align-items:flex-start; background:var(--ink); border-top:1px solid var(--line); }.about-tabs{margin-top:30px}.tab-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.tab{border:1px solid rgba(0,0,0,.42);background:transparent;padding:10px 14px;font:600 .78rem Inter,Arial,sans-serif;cursor:pointer}.tab[aria-selected="true"]{background:var(--ink);color:#fff}.tab-panel{display:none;line-height:1.7;font-size:.96rem}.tab-panel.active{display:block}.team-card{display:grid;grid-template-columns:70px 1fr;gap:16px;align-items:center}.portrait{width:70px;height:70px;background:#1c1d20;color:var(--yellow);display:grid;place-items:center;font-weight:700}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.gallery div{min-height:100px;background:linear-gradient(135deg,#34363a,#161719)}.gallery div:nth-child(2){background:linear-gradient(135deg,#806f10,#26230e)}.gallery div:nth-child(3){background:linear-gradient(135deg,#5b626a,#24262a)}
    .tilewall { padding:14px; display:grid; grid-template-columns:repeat(3,1fr); gap:14px; background:#1b1d20; }.tile-column { height:480px; overflow:hidden; position:relative; }.tile-track { display:flex; flex-direction:column; gap:14px; animation:tile-up 30s linear infinite; will-change:transform; }.tile-column:nth-child(2) .tile-track { animation-name:tile-down; animation-duration:36s; }.tile-column:nth-child(3) .tile-track { animation-duration:42s; }.tile { flex:0 0 235px; min-height:235px; position:relative; display:flex; flex-direction:column; justify-content:end; padding:19px; background:linear-gradient(135deg,#676b70,#16181b); background-size:cover; background-position:center; overflow:hidden; }.tile:nth-child(2n) { background:linear-gradient(135deg,#8f7c11,#222015); }.tile:nth-child(3n) { background:linear-gradient(135deg,#5b626b,#16191d); }.tile strong { font-size:.9rem; font-weight:600; }.tile small { margin-top:5px; color:#ddd; font-size:.72rem; }.tile:after { content:""; position:absolute; inset:0; border:1px solid rgba(255,255,255,.12); pointer-events:none; }.tile-track:hover { animation-play-state:paused; } @keyframes tile-up { from { transform:translateY(0); } to { transform:translateY(calc(-50% - 7px)); } } @keyframes tile-down { from { transform:translateY(calc(-50% - 7px)); } to { transform:translateY(0); } }
    .hero { position:relative; min-height:calc(100vh - 88px); isolation:isolate; }.hero:after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,rgba(17,18,20,.99) 0%,rgba(17,18,20,.95) 34%,rgba(17,18,20,.69) 57%,rgba(17,18,20,.15) 100%); }.hero .hero-grid { position:relative; z-index:2; min-height:calc(100vh - 216px); }.hero > .tilewall { position:absolute; inset:0; z-index:0; width:100%; height:100%; padding-left:max(14px,calc((100vw - var(--max))/2)); padding-right:0; opacity:.92; }.hero > .tilewall .tile-column { height:100%; }.hero .tile-column:first-child { opacity:.34; }.hero .tile-column:nth-child(2) { opacity:.68; }.hero .tile-column:nth-child(3) { opacity:1; }.hero .tile { min-height:calc(50vh - 44px); }.hero .tilewall:before { content:""; position:absolute; inset:0; z-index:2; pointer-events:none; background:linear-gradient(90deg,rgba(17,18,20,.38),transparent 62%); }
    @media (prefers-reduced-motion:reduce) { *,*:before,*:after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; } }
    @media (max-width:520px) { .wrap { width:min(calc(100% - 32px),var(--max)); }.nav { height:67px; }.brand { font-size:1rem; }.brand-logo { width:96px; height:42px; }.nav .btn { display:none; }.links.open { top:67px; }.section,.contact { padding:70px 0; }.section-head { display:block; margin-bottom:30px; }.section-intro { margin-top:15px; }.expertise-grid,.project-grid,.steps,.path { grid-template-columns:1fr; }.expertise-card,.expertise-card:nth-child(2) { border-right:0; border-bottom:1px solid #d9d7d2; }.expertise-card:last-child { border-bottom:0; }.project:first-child { grid-column:auto; }.project { min-height:295px; }.step,.step:not(:first-child),.step:nth-child(3) { border-right:0; border-bottom:1px solid #d9d7d2; padding:20px 0; min-height:auto; }.step:last-child { border-bottom:0; }.hero-actions .btn { width:100%; }.academy-art { min-height:290px; }.contact-card { padding:25px; }.footer-main { grid-template-columns:1fr; gap:30px; padding:38px 0; }.footer-bottom { align-items:flex-start; flex-direction:column; } }

/* Hiérarchie typographique : titres expressifs, sans dominer le contenu. */
.hero h1 { max-width:20ch; font-size:clamp(2.3rem,3.7vw,3.8rem); line-height:1.03; }
.section h2 { font-size:clamp(1.85rem,2.9vw,2.95rem); line-height:1.08; }
.academy-copy h2,.about h2,.contact h2 { font-size:clamp(1.95rem,3vw,3.1rem); line-height:1.06; }
.hero-copy,.section-copy,.academy-copy p,.about p,.contact p { font-size:clamp(.98rem,1.1vw,1.08rem); line-height:1.65; }

@media (min-width:851px) {
  .hero-grid { grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr); }
  .hero h1 { max-width:850px; }
  .hero .lead { max-width:750px; }
}

/* Pied de page : repères clairs, utile sur tous les formats. */
.site-footer { border-top:1px solid #34363a; background:#090b0d; color:#aeb1b5; }
.site-footer .footer-main { display:grid; grid-template-columns:1.25fr .62fr .62fr 1.45fr; gap:clamp(28px,4vw,70px); padding:54px 0 38px; }
.site-footer .footer-main section { display:grid; align-content:start; gap:10px; }
.site-footer .footer-brand { display:flex; align-items:flex-start; gap:14px; }
.site-footer .footer-brand img { width:78px; height:35px; object-fit:contain; }
.site-footer .footer-brand div { display:grid; gap:5px; }
.site-footer .footer-brand strong { color:#fff; font-size:1rem; letter-spacing:-.025em; }
.site-footer .footer-brand span { color:#989ca0; font-size:.78rem; }
.site-footer .footer-main b { color:var(--yellow); font-size:.68rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.site-footer .footer-main a { width:max-content; color:#e8e9e8; font-size:.82rem; text-decoration:none; }
.site-footer .footer-main a:hover { color:var(--yellow); }
.site-footer .footer-partner { grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:22px; padding:18px 0 0; border-top:1px solid #303337; }
.site-footer .footer-partner p { max-width:360px; margin:3px 0 0; color:#aeb1b5; font-size:.82rem; line-height:1.55; }
.site-footer .partner-button { align-self:end; border:1px solid var(--yellow); padding:11px 13px; color:var(--yellow) !important; font-size:.72rem !important; font-weight:800; white-space:nowrap; }
.site-footer .partner-button:hover { background:var(--yellow); color:#090b0d !important; }
.site-footer .footer-bottom { display:flex; justify-content:space-between; gap:20px; padding:18px 0 22px; border-top:1px solid #303337; color:#7f858b; font-size:.7rem; }

@media (max-width:760px) {
  .site-footer .footer-main { grid-template-columns:1fr 1fr; gap:27px 22px; padding:32px 0 24px; }
  .site-footer .footer-brand { grid-column:1 / -1; align-items:center; padding-bottom:17px; border-bottom:1px solid #303337; }
  .site-footer .footer-brand img { width:72px; height:33px; }
  .site-footer .footer-main a { font-size:.8rem; }
  .site-footer .footer-partner { grid-column:1 / -1; grid-template-columns:1fr; gap:14px; padding-top:20px; }
  .site-footer .footer-partner p { max-width:none; font-size:.79rem; }
  .site-footer .partner-button { justify-self:start; }
  .site-footer .footer-bottom { align-items:flex-start; flex-direction:column; gap:7px; padding:16px 0 20px; font-size:.66rem; }
}

/* ==========================================================================
   Correctifs de présentation : héros, en-têtes et mobile
   ========================================================================== */
html,body { max-width:100%; overflow-x:clip; }

/* Héros : le texte démarre en haut, sans grand vide avant le titre. */
.hero { min-height:min(calc(100vh - 88px),640px); padding:56px 0 72px; }
.hero .hero-grid { min-height:0; align-items:start; }
.hero h1 { margin-top:0; }
/* Voile plus franc derrière le texte : les légendes de la mosaïque ne le traversent plus. */
.hero:after { background:linear-gradient(90deg,rgba(17,18,20,.99) 0%,rgba(17,18,20,.985) 66%,rgba(17,18,20,.6) 80%,rgba(17,18,20,.1) 100%); }

@media (max-width:850px) {
  .hero { min-height:0; padding:36px 0 52px; }
  .hero:after { background:linear-gradient(180deg,rgba(17,18,20,.97) 0%,rgba(17,18,20,.93) 60%,rgba(17,18,20,.86) 100%); }
  .hero > .tilewall { padding:0 14px; opacity:.5; }
  .hero .tile strong,.hero .tile small { display:none; }
  .section-head { display:block; }
  .section-intro { max-width:none; margin-top:22px; }
}

@media (max-width:760px) {
  /* En-tête du haut : plus de bouton « Menu » (la barre du bas s'en charge), l'icône de connexion prend sa place. */
  .menu,.nav .btn { display:none; }
  .nav { justify-content:space-between; }
  /* Pages secondaires : logo + recherche seulement, les liens sont dans la barre du bas. */
  header.case-nav .wrap { min-height:64px; }
  header.case-nav .wrap > a:not(.brand) { display:none; }
  header.case-nav .site-search-link { margin-left:auto; }
  /* La barre du bas ne masque plus le pied de page et ne laisse plus de bande claire. */
  body .home-page,body .market-page,body .case-page,body .services-page,body .about-page,body .search-page,body .service-detail-page { padding-bottom:0; }
  body .site-footer { padding-bottom:calc(72px + env(safe-area-inset-bottom,0px)); }
}
