/* Magribache — identité finale de la page d'accueil */

.home-final{
    --mf-ink:#181818;
    --mf-blue:#f58220;
    --mf-blue-deep:#181818;
    --mf-aqua:#f58220;
    --mf-orange:#f58220;
    --mf-soft:#eef6f5;
    --mf-cloud:#f7f9f7;
    --mf-line:rgba(23,63,80,.13);
    background:#fff;
    color:var(--mf-ink);
    font-family:'Manrope',sans-serif;
}

.home-final .cursor-glow{display:none}
.home-final .container{width:min(90%,1320px);max-width:1320px}
.home-final .section-v2{padding:120px 0}
.home-final .section-heading{margin-bottom:58px}
.home-final .section-heading h2,
.home-final .expertise-copy h2,
.home-final .numbers-title h2,
.home-final .journal-top h2,
.home-final .contact-v2 h2{
    font-size:clamp(48px,5vw,72px);
    line-height:1;
    letter-spacing:-.025em;
}
.home-final .eyebrow{color:var(--mf-orange)}
.home-final .eyebrow.light{color:var(--mf-blue)}
.home-final .section-heading h2 em,
.home-final .journal-top h2 em{color:var(--mf-blue)}

/* Navigation */
.home-final .site-header{padding:19px 0;background:rgba(255,255,255,.93);border-bottom:1px solid var(--mf-line);backdrop-filter:blur(16px)}
.home-final .site-header.active{padding:11px 0;background:rgba(255,255,255,.97)}
.home-final .main-nav a{color:var(--mf-ink)}
.home-final .main-nav a::after{background:var(--mf-orange)}
.home-final .nav-cta{color:#fff;background:var(--mf-blue);border-color:var(--mf-blue);padding:13px 18px}
.home-final .nav-cta:hover{background:var(--mf-orange);border-color:var(--mf-orange)}

/* Hero simple et éditorial */
.home-final .hero-v2{min-height:760px;height:94svh;max-height:900px;background:#fff}
.home-final .hero-v2-media{left:49%;width:51%;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%)}
.home-final .hero-v2-media img{object-position:58% center;filter:saturate(.9) contrast(1.02)}
.home-final .hero-v2-media::after{background:linear-gradient(90deg,rgba(255,255,255,.45),transparent 25%)}
.home-final .hero-v2-shade{background:linear-gradient(90deg,#fff 0 46%,rgba(255,255,255,.82) 52%,transparent 63%)}
.home-final .hero-grid{opacity:.28;mask-image:linear-gradient(to right,#000,transparent 52%)}
.home-final .hero-v2-copy{max-width:660px}
.home-final .hero-v2 h1{font-size:clamp(60px,6.3vw,96px);line-height:.9;color:var(--mf-ink);margin-bottom:28px}
.home-final .hero-v2 h1 em{color:var(--mf-orange);font-size:.72em}
.home-final .hero-lead{max-width:570px;color:#607780;font-size:16px;line-height:1.75}
.home-final .button{min-height:54px;padding:0 23px}
.home-final .button-orange{background:var(--mf-orange)}
.home-final .button-orange:hover{background:#e96f0c}
.home-final .button-ghost{color:var(--mf-ink);border-color:rgba(23,63,80,.25)}
.home-final .hero-proof{right:1%;bottom:36px;box-shadow:0 15px 45px rgba(23,63,80,.12)}
.home-final .hero-proof strong{color:var(--mf-blue-deep)}
.home-final .hero-index{bottom:28px}

/* Bande de preuves statique */
.home-final .trust-strip{padding:0;background:var(--mf-blue-deep)}
.home-final .trust-track{width:min(90%,1320px);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);animation:none}
.home-final .trust-track span{justify-content:center;margin:0;padding:20px 14px;border-right:1px solid rgba(255,255,255,.17);font-size:10px}
.home-final .trust-track span:nth-child(4){border-right:0}
.home-final .trust-track span:nth-child(n+5){display:none}

/* Besoins en stockage */
.home-final .solutions-v2{background:#fff}
.home-final .solutions-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:510px;gap:15px}
.home-final .solution-main,
.home-final .solution-fire,
.home-final .solution-custom{grid-column:auto;grid-row:auto}
.home-final .solution-tile{box-shadow:none;border-radius:0}
.home-final .solution-tile>img{filter:saturate(.86)}
.home-final .solution-tile:hover>img{transform:scale(1.045)}
.home-final .tile-gradient{background:linear-gradient(to top,rgba(8,58,74,.92),rgba(8,58,74,.02) 68%)}
.home-final .tile-copy{padding:25px}
.home-final .tile-copy h3{font-size:29px}
.home-final .tile-copy p{font-size:12px}
.home-final .solution-custom{background:var(--mf-soft);border:1px solid var(--mf-line)}
.home-final .solution-custom .tile-copy h3,
.home-final .solution-custom .tile-copy b{color:var(--mf-ink)}
.home-final .solution-custom .tile-copy>span{color:var(--mf-orange)}
.home-final .custom-orbit{border-color:rgba(8,127,159,.2)}

/* Fabrication et expertise */
.home-final .expertise-v2{background:var(--mf-soft);color:var(--mf-ink)}
.home-final .expertise-grid{gap:90px}
.home-final .expertise-image{height:650px}
.home-final .expertise-image img{filter:saturate(.82)}
.home-final .expertise-copy h2{color:var(--mf-ink);margin:20px 0 28px}
.home-final .expertise-copy h2 em{color:var(--mf-orange)}
.home-final .expertise-intro{color:#60757d}
.home-final .expertise-steps,
.home-final .expertise-steps article{border-color:var(--mf-line)}
.home-final .expertise-steps article{grid-template-columns:45px 1fr;padding:20px 0}
.home-final .expertise-steps h3{color:var(--mf-ink)}
.home-final .expertise-steps p{color:#6d7f86}
.home-final .expertise-copy .text-link{color:var(--mf-blue-deep)}

/* Dimensionnement réaliste */
.home-final .capacity-lab{background:#fff}
.home-final .capacity-lab::before{opacity:.55}
.home-final .capacity-stage{display:grid;grid-template-columns:1.45fr .55fr;min-height:670px;background:#fff;border:1px solid var(--mf-line);box-shadow:0 24px 65px rgba(23,63,80,.09)}
.home-final .capacity-visual{position:relative;display:grid;grid-template-rows:315px 1fr;overflow:hidden;background:#f5f9f8}
.home-final .capacity-visual::after{display:none}
.home-final .capacity-photo{position:relative;overflow:hidden}
.home-final .capacity-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,58,74,.38),transparent 45%)}
.home-final .capacity-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.86);transition:filter .35s,transform .35s}
.home-final .capacity-photo>span{position:absolute;z-index:2;left:25px;bottom:20px;color:#fff;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.home-final .capacity-visual.changing .capacity-photo img{filter:saturate(.45);transform:scale(1.02)}
.home-final .capacity-badge{left:25px;top:25px;background:#fff;color:var(--mf-ink);border-left:3px solid var(--mf-orange);box-shadow:0 10px 30px rgba(23,63,80,.12)}
.home-final .capacity-badge small{color:#72838a}
.home-final .tank-blueprint{position:relative;padding:27px 42px 34px;background-image:linear-gradient(rgba(8,127,159,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(8,127,159,.065) 1px,transparent 1px);background-size:24px 24px}
.home-final .tank-blueprint>small{display:block;color:#698087;font-size:8px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:23px}
.home-final .tank-plan-wrap{position:relative;width:84%;max-width:470px;margin:0 auto;padding:0 40px 32px 0}
.home-final .tank-plan{--tank-ratio:1.85;position:relative;width:min(100%,430px);aspect-ratio:var(--tank-ratio)/1;border-radius:22% 22% 18% 18% / 28% 28% 24% 24%;background:linear-gradient(145deg,#167f76,#075a5a 62%,#06484d);box-shadow:inset 15px 14px 26px rgba(255,255,255,.16),inset -14px -12px 23px rgba(0,0,0,.16),0 13px 28px rgba(23,63,80,.16);transition:aspect-ratio .45s cubic-bezier(.22,1,.36,1),transform .45s}
.home-final .tank-plan::after{content:"";position:absolute;inset:9% 4%;border:1px solid rgba(255,255,255,.18);border-radius:inherit}
.home-final .tank-plan>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:rgba(255,255,255,.72);font-size:9px;font-weight:800;letter-spacing:.18em}
.home-final .tank-seam{position:absolute;z-index:2;top:5%;bottom:5%;width:1px;background:rgba(255,255,255,.2)}
.home-final .seam-a{left:33%}.home-final .seam-b{right:33%}
.home-final .tank-valve-plan{position:absolute;z-index:3;right:-9px;top:50%;width:17px;height:22px;transform:translateY(-50%);border-radius:3px;background:var(--mf-orange);box-shadow:0 0 0 4px #d8e2df}
.home-final .plan-length{position:absolute;left:0;right:40px;bottom:0;height:18px;border-left:1px solid var(--mf-blue);border-right:1px solid var(--mf-blue);border-bottom:1px solid var(--mf-blue);text-align:center}
.home-final .plan-length span{position:relative;top:9px;padding:3px 8px;background:#f5f9f8;color:var(--mf-blue-deep);font-size:9px;font-weight:800}
.home-final .plan-width{position:absolute;right:0;top:0;bottom:32px;width:18px;border-top:1px solid var(--mf-blue);border-right:1px solid var(--mf-blue);border-bottom:1px solid var(--mf-blue)}
.home-final .plan-width span{position:absolute;left:9px;top:50%;padding:3px 8px;background:#f5f9f8;color:var(--mf-blue-deep);font-size:9px;font-weight:800;white-space:nowrap;transform:translate(-50%,-50%) rotate(-90deg)}
.home-final .capacity-panel{padding:48px 40px;background:var(--mf-cloud);color:var(--mf-ink);border-left:1px solid var(--mf-line)}
.home-final .capacity-choice{height:70px;background:#fff;color:var(--mf-ink);border-color:var(--mf-line)}
.home-final .capacity-choice.active{color:#fff;background:var(--mf-orange);border-color:var(--mf-orange)}
.home-final .capacity-details,
.home-final .capacity-details>div{border-color:var(--mf-line)}
.home-final .capacity-details span{color:var(--mf-blue)}
.home-final .capacity-details strong{color:var(--mf-ink)}
.home-final .capacity-note{color:#74868d;line-height:1.5}

/* Cinq raisons */
.home-final .reasons-final{background:var(--mf-cloud)}
.home-final .reasons-heading{max-width:920px}
.home-final .reasons-heading .eyebrow{margin-bottom:20px}
.home-final .reasons-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--mf-line);border-left:1px solid var(--mf-line)}
.home-final .reason-card{position:relative;min-height:300px;padding:34px 27px;background:#fff;border-right:1px solid var(--mf-line);border-bottom:1px solid var(--mf-line);transition:background .3s,transform .3s,box-shadow .3s}
.home-final .reason-card:hover{z-index:2;background:var(--mf-blue);color:#fff;transform:translateY(-7px);box-shadow:0 20px 45px rgba(245,130,32,.2)}
.home-final .reason-card>i{display:grid;place-items:center;width:55px;height:55px;margin-bottom:52px;border-radius:50%;background:var(--mf-soft);color:var(--mf-blue);font-size:20px;transition:.3s}
.home-final .reason-card:hover>i{background:rgba(255,255,255,.16);color:#fff}
.home-final .reason-card>span{position:absolute;right:20px;top:18px;color:#9aabad;font-family:'Oswald';font-size:12px}
.home-final .reason-card h3{font-family:'Oswald';font-size:23px;line-height:1.15;text-transform:uppercase;color:var(--mf-ink);margin:0 0 13px;transition:.3s}
.home-final .reason-card:hover h3{color:#fff}
.home-final .reason-card p{color:#718289;font-size:12px;line-height:1.7;margin:0;transition:.3s}
.home-final .reason-card:hover p{color:rgba(255,255,255,.75)}

/* Chiffres, projets et actualités */
.home-final .numbers-v2{padding:100px 0;background:linear-gradient(115deg,var(--mf-blue-deep),var(--mf-aqua))}
.home-final .numbers-title h2 em{color:#d8f7f8}
.home-final .projects-v2{background:#fff}
.home-final .project-showcase{height:620px}
.home-final .project-shot::after{background:linear-gradient(to top,rgba(8,58,74,.88),transparent 58%)}
.home-final .journal-v2{background:var(--mf-cloud)}
.home-final .journal-feature{box-shadow:none;border:1px solid var(--mf-line)}
.home-final .journal-card{background:#fff;border:1px solid var(--mf-line)}
.home-final .button-dark{background:var(--mf-blue-deep)}

/* Contact et footer */
.home-final .contact-v2{padding:95px 0;background:var(--mf-orange)}
.home-final .contact-backdrop{font-size:240px;bottom:-90px}
.home-final .site-footer{background:#eaf3f2;color:var(--mf-ink)}
.home-final .social-row a{color:var(--mf-blue);background:#fff;border-color:var(--mf-line)}

@media(max-width:1100px){
    .home-final .solutions-bento{grid-template-columns:1fr 1fr;grid-template-rows:430px 430px}
    .home-final .reasons-grid{grid-template-columns:repeat(3,1fr)}
    .home-final .capacity-stage{grid-template-columns:1.15fr .85fr}
}

@media(max-width:900px){
    .home-final .site-header .main-nav{background:#fff}
    .home-final .hero-proof{display:none}
    .home-final .trust-track{grid-template-columns:1fr 1fr;width:100%}
    .home-final .trust-track span{border-bottom:1px solid rgba(255,255,255,.16)}
    .home-final .expertise-grid{gap:55px}
    .home-final .capacity-stage{grid-template-columns:1fr}
    .home-final .capacity-panel{border-left:0;border-top:1px solid var(--mf-line)}
    .home-final .reasons-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:640px){
    .home-final .section-v2{padding:82px 0}
    .home-final .section-heading h2,
    .home-final .expertise-copy h2,
    .home-final .numbers-title h2,
    .home-final .journal-top h2,
    .home-final .contact-v2 h2{font-size:43px}
    .home-final .hero-v2{height:auto;min-height:760px;padding-bottom:35px}
    .home-final .hero-v2-media{left:0;width:100%;height:43%;clip-path:none}
    .home-final .hero-v2-shade{background:linear-gradient(0deg,#fff 0 56%,transparent 76%)}
    .home-final .hero-v2-inner{padding-top:320px}
    .home-final .hero-v2 h1{font-size:53px}
    .home-final .hero-v2 h1 em{font-size:.76em}
    .home-final .hero-index{display:none}
    .home-final .trust-track{grid-template-columns:1fr}
    .home-final .trust-track span{justify-content:flex-start;padding-left:6%;border-right:0}
    .home-final .solutions-bento{grid-template-columns:1fr;grid-template-rows:410px 410px 410px 360px}
    .home-final .expertise-image{height:410px}
    .home-final .capacity-visual{grid-template-rows:250px 300px}
    .home-final .tank-blueprint{padding:25px 22px}
    .home-final .tank-plan-wrap{width:96%;padding-right:34px}
    .home-final .capacity-panel{padding:35px 22px}
    .home-final .reasons-grid{grid-template-columns:1fr}
    .home-final .reason-card{min-height:230px}
    .home-final .reason-card>i{margin-bottom:32px}
    .home-final .project-showcase{height:auto}
}

@media(prefers-reduced-motion:reduce){
    .home-final *{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
}

/* Ajustement final : orange, noir et blanc */
.home-final{
    --mf-ink:#181818;
    --mf-blue:#f58220;
    --mf-blue-deep:#181818;
    --mf-aqua:#f58220;
    --mf-soft:#f5f5f2;
    --mf-cloud:#fafaf8;
    --mf-line:rgba(24,24,24,.13);
    --v2-ink:#181818;
    --v2-deep:#181818;
    --v2-blue:#f58220;
    --v2-aqua:#f58220;
    --v2-orange:#f58220;
    --v2-cream:#f5f5f2;
    --v2-paper:#fff;
}

.home-final .site-header{background:rgba(255,255,255,.96)}
.home-final .nav-cta{background:#181818;border-color:#181818}
.home-final .nav-cta:hover{background:var(--mf-orange);border-color:var(--mf-orange)}
.home-final .trust-strip{background:#181818}
.home-final .eyebrow.light{color:var(--mf-orange)}

/* Nouvelle image principale plein format */
.home-final .hero-v2{min-height:820px;height:100svh;max-height:940px;padding:106px 4% 38px;background:#fff;align-items:stretch}
.home-final .hero-v2-media{inset:106px 4% 38px;left:4%;width:auto;height:auto;clip-path:none;overflow:hidden}
.home-final .hero-v2-media::after{background:linear-gradient(90deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.53) 43%,rgba(0,0,0,.05) 75%)}
.home-final .hero-v2-media img{width:100%;height:100%;object-position:center;filter:saturate(.84) contrast(1.04)}
.home-final .hero-v2-shade{inset:106px 4% 38px;background:linear-gradient(0deg,rgba(0,0,0,.35),transparent 52%)}
.home-final .hero-grid{inset:106px 4% 38px;opacity:.25;background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);mask-image:linear-gradient(to right,#000,transparent 75%)}
.home-final .hero-v2-inner{height:100%;padding:72px 6% 50px;align-items:center}
.home-final .hero-v2-copy{max-width:720px}
.home-final .hero-v2 h1{color:#fff;font-size:clamp(64px,6.6vw,102px);text-shadow:0 8px 32px rgba(0,0,0,.2)}
.home-final .hero-v2 h1 em{color:var(--mf-orange)}
.home-final .hero-lead{color:rgba(255,255,255,.82)}
.home-final .button-ghost{color:#fff;border-color:rgba(255,255,255,.5);background:rgba(0,0,0,.08)}
.home-final .button-ghost:hover{background:#fff;color:#181818}
.home-final .hero-proof{right:5%;bottom:66px;background:#fff}
.home-final .hero-proof strong{color:#181818}
.home-final .hero-index{left:6%;bottom:62px;color:#fff}
.home-final .hero-index div{background:rgba(255,255,255,.32)}
.home-final .hero-index small{color:rgba(255,255,255,.65)}

/* Suppression des tonalités bleues restantes */
.home-final .solution-custom{background:#f4f4f1}
.home-final .tile-gradient{background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,.02) 68%)}
.home-final .tile-copy>span{color:var(--mf-orange)}
.home-final .solution-tile::after{background:radial-gradient(circle at var(--x,50%) var(--y,50%),rgba(245,130,32,.22),transparent 28%)}
.home-final .solution-custom .tile-copy>span{color:var(--mf-orange)}
.home-final .custom-orbit{border-color:rgba(245,130,32,.25)}
.home-final .custom-orbit span{border-color:rgba(245,130,32,.34)}
.home-final .expertise-v2{background:#f6f6f3}
.home-final .expertise-v2::after{color:rgba(245,130,32,.045)}
.home-final .expertise-image::before{border-color:rgba(245,130,32,.42)}
.home-final .expertise-copy .text-link{color:#181818}
.home-final .capacity-lab::before{display:none}
.home-final .project-shot span,
.home-final .journal-copy small,
.home-final .journal-card small{color:var(--mf-orange)}
.home-final .journal-card b{color:#181818}
.home-final .site-footer{background:#f5f5f2}
.home-final .site-footer h3{color:var(--mf-orange)}
.home-final .footer-nav a:hover{color:var(--mf-orange)}
.home-final .social-row a{color:#181818}
.home-final .social-row a:hover{background:var(--mf-orange);border-color:var(--mf-orange);color:#fff}
.home-final .whatsapp-float{background:#181818;box-shadow:0 14px 35px rgba(0,0,0,.22)}
.home-final .whatsapp-float:hover{background:var(--mf-orange)}
.home-final .whatsapp-float::before{background:rgba(245,130,32,.24)}
.home-final .project-shot::after{background:linear-gradient(to top,rgba(0,0,0,.82),transparent 58%)}

/* Citerne seule, animée */
.home-final .capacity-lab{background:#fff}
.home-final .tank-showcase{position:relative;padding:0;border-top:1px solid var(--mf-line);border-bottom:1px solid var(--mf-line);background:#fff}
.home-final .tank-only-stage{position:relative;height:500px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff}
.home-final .tank-only-stage::before{content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(245,130,32,.12);border-radius:50%;box-shadow:0 0 0 80px rgba(245,130,32,.025),0 0 0 160px rgba(245,130,32,.018)}
.home-final .tank-ground{position:absolute;left:50%;bottom:102px;width:min(66%,720px);height:42px;transform:translateX(-50%);border-radius:50%;background:rgba(0,0,0,.18);filter:blur(18px);animation:tankShadow 4s ease-in-out infinite}
.home-final .tank-animated{--tank-ratio:1.85;position:relative;z-index:2;width:min(68%,760px);aspect-ratio:var(--tank-ratio)/1;border-radius:18% 18% 15% 15% / 40% 40% 32% 32%;background:linear-gradient(145deg,#363636 0%,#111 48%,#080808 75%,#242424 100%);box-shadow:inset 20px 18px 32px rgba(255,255,255,.13),inset -25px -20px 35px rgba(0,0,0,.55),0 28px 50px rgba(0,0,0,.24);transition:aspect-ratio .5s cubic-bezier(.22,1,.36,1),filter .25s;animation:tankBreathe 4s ease-in-out infinite}
.home-final .tank-animated::before{content:"";position:absolute;inset:6% 3%;border:1px solid rgba(255,255,255,.11);border-radius:inherit}
.home-final .tank-animated::after{content:"";position:absolute;left:8%;right:8%;bottom:7%;height:12%;border-radius:50%;background:rgba(0,0,0,.28);filter:blur(8px)}
.home-final .tank-animated.is-changing{filter:brightness(1.45);animation:none;transform:scale(.96)}
.home-final .tank-gloss{position:absolute;z-index:2;left:10%;right:16%;top:9%;height:24%;border-radius:50%;background:linear-gradient(180deg,rgba(255,255,255,.16),transparent);filter:blur(5px);animation:tankGloss 5s ease-in-out infinite}
.home-final .tank-animated .tank-seam{top:5%;bottom:5%;background:rgba(255,255,255,.13)}
.home-final .tank-animated .tank-valve-plan{right:-12px;width:24px;height:30px;background:var(--mf-orange);box-shadow:0 0 0 5px #222}
.home-final .tank-animated>span{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:800;letter-spacing:.24em}
.home-final .tank-capacity-display{position:absolute;z-index:5;right:6%;top:40px;padding:15px 20px;border-left:3px solid var(--mf-orange);background:#181818;color:#fff;box-shadow:0 14px 35px rgba(0,0,0,.15)}
.home-final .tank-capacity-display small{display:block;margin-bottom:3px;color:rgba(255,255,255,.58);font-size:8px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.home-final .tank-capacity-display strong{font-family:'Oswald';font-size:30px}
.home-final .tank-controls{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px 45px;padding:32px 0}
.home-final .tank-controls .capacity-tabs{display:flex;gap:8px}
.home-final .tank-controls .capacity-choice{min-width:94px;height:54px;padding:0 16px;border:1px solid var(--mf-line);background:#fff;color:#181818;font-family:'Oswald';font-size:20px;cursor:pointer}
.home-final .tank-controls .capacity-choice span{font-family:'Manrope';font-size:8px;letter-spacing:.05em}
.home-final .tank-controls .capacity-choice.active{background:#181818;border-color:#181818;color:#fff;box-shadow:none}
.home-final .tank-controls>p{grid-column:1;margin:0;color:#757575;font-size:12px}
.home-final .tank-controls>p strong{color:#181818}
.home-final .tank-controls>.button{grid-column:2;grid-row:1/3}

/* Les chiffres restent sur fond blanc */
.home-final .numbers-v2{background:#fff;color:#181818;border-top:1px solid var(--mf-line);border-bottom:1px solid var(--mf-line)}
.home-final .numbers-v2::before{background:repeating-radial-gradient(ellipse at 0 50%,transparent 0 56px,rgba(245,130,32,.08) 57px 58px)}
.home-final .numbers-title h2{color:#181818}
.home-final .numbers-title h2 em{color:var(--mf-orange)}
.home-final .numbers-list{border-color:var(--mf-line)}
.home-final .numbers-list article{border-color:var(--mf-line)}
.home-final .numbers-list strong{color:#181818}
.home-final .numbers-list sup{color:var(--mf-orange)}
.home-final .numbers-list p{color:#777}

@keyframes tankBreathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.012)}}
@keyframes tankShadow{0%,100%{transform:translateX(-50%) scale(1);opacity:.75}50%{transform:translateX(-50%) scale(.94);opacity:.55}}
@keyframes tankGloss{0%,100%{transform:translateX(-3%);opacity:.65}50%{transform:translateX(7%);opacity:1}}

@media(max-width:900px){
    .home-final .hero-v2{min-height:760px}
    .home-final .hero-proof{display:none}
    .home-final .tank-controls{grid-template-columns:1fr}
    .home-final .tank-controls>.button{grid-column:1;grid-row:auto;justify-self:start}
}

@media(max-width:640px){
    .home-final .hero-v2{min-height:760px;height:100svh;padding:90px 0 0}
    .home-final .hero-v2-media,.home-final .hero-v2-shade,.home-final .hero-grid{inset:90px 0 0}
    .home-final .hero-v2-media{height:auto}
    .home-final .hero-v2-media::after{background:linear-gradient(0deg,rgba(0,0,0,.78),rgba(0,0,0,.08) 75%)}
    .home-final .hero-v2-shade{background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 56%)}
    .home-final .hero-v2-inner{padding:250px 6% 45px;align-items:flex-end}
    .home-final .hero-v2 h1{font-size:51px;color:#fff}
    .home-final .hero-lead{color:rgba(255,255,255,.82)}
    .home-final .hero-actions{width:100%}
    .home-final .hero-actions .button{width:100%}
    .home-final .tank-only-stage{height:380px}
    .home-final .tank-animated{width:84%}
    .home-final .tank-ground{bottom:80px;width:76%}
    .home-final .tank-capacity-display{right:4%;top:24px}
    .home-final .tank-controls{padding:25px 0}
    .home-final .tank-controls .capacity-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}
    .home-final .tank-controls .capacity-choice{width:100%}
    .home-final .tank-controls>.button{width:100%}
}

/* Hero : séparation nette entre les actions et les chiffres */
@media(min-width:1181px){
    .home-final .hero-v2-copy{transform:translateY(-16px)}
    .home-final .hero-proof{
        top:150px;
        right:6%;
        bottom:auto;
        width:190px;
        padding:8px 18px;
        display:flex;
        flex-direction:column;
    }
    .home-final .hero-proof div{
        width:100%;
        min-width:0;
        padding:15px 0;
        border-right:0;
        border-bottom:1px solid rgba(24,24,24,.12);
    }
    .home-final .hero-proof div:last-child{border-bottom:0}
}

@media(min-width:901px) and (max-width:1180px){
    .home-final .hero-v2-copy{max-width:600px;transform:translateY(-12px)}
    .home-final .hero-v2 h1{font-size:72px}
    .home-final .hero-proof{
        top:132px;
        right:6%;
        bottom:auto;
        width:170px;
        padding:6px 15px;
        display:flex;
        flex-direction:column;
    }
    .home-final .hero-proof div{
        width:100%;
        min-width:0;
        padding:12px 0;
        border-right:0;
        border-bottom:1px solid rgba(24,24,24,.12);
    }
    .home-final .hero-proof div:last-child{border-bottom:0}
    .home-final .hero-proof strong{font-size:31px}
}

/* Hero éditorial : contenu blanc au-dessus, panorama en dessous */
@media(min-width:901px){
    .home-final .hero-v2{
        display:block;
        min-height:960px;
        height:960px;
        max-height:none;
        padding:90px 4% 42px;
        background:#fff;
        color:#181818;
    }
    .home-final .hero-v2-media{
        inset:390px 4% 42px;
        width:auto;
        height:auto;
        clip-path:none;
    }
    .home-final .hero-v2-media::after{
        background:linear-gradient(0deg,rgba(0,0,0,.32),transparent 48%);
    }
    .home-final .hero-v2-media img{
        width:100%;
        height:100%;
        object-position:center 56%;
    }
    .home-final .hero-v2-shade{
        inset:390px 4% 42px;
        background:linear-gradient(90deg,rgba(0,0,0,.14),transparent 38%);
    }
    .home-final .hero-grid{display:none}
    .home-final .hero-v2-inner{
        position:relative;
        display:block;
        height:auto;
        padding:48px 0 0;
    }
    .home-final .hero-v2-copy{
        display:grid;
        grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);
        grid-template-rows:auto auto 1fr;
        column-gap:85px;
        width:100%;
        max-width:none;
        transform:none;
    }
    .home-final .hero-eyebrow{
        grid-column:1 / -1;
        grid-row:1;
        margin-bottom:20px;
    }
    .home-final .hero-v2 h1{
        grid-column:1;
        grid-row:2 / 4;
        color:#181818;
        font-size:clamp(66px,6vw,91px);
        line-height:.88;
        margin:0;
        text-shadow:none;
    }
    .home-final .hero-lead{
        grid-column:2;
        grid-row:2;
        align-self:end;
        color:#656565;
        margin:5px 0 24px;
    }
    .home-final .hero-actions{
        grid-column:2;
        grid-row:3;
        align-self:start;
    }
    .home-final .button-ghost{
        color:#181818;
        border-color:rgba(24,24,24,.25);
        background:#fff;
    }
    .home-final .button-ghost:hover{background:#181818;color:#fff}
    .home-final .hero-proof{
        top:auto;
        right:6%;
        bottom:63px;
        width:auto;
        padding:0 16px;
        display:flex;
        flex-direction:row;
        transform:none;
        background:#fff;
    }
    .home-final .hero-proof div{
        width:auto;
        min-width:145px;
        padding:15px 18px;
        border-bottom:0;
        border-right:1px solid rgba(24,24,24,.12);
    }
    .home-final .hero-proof div:last-child{border-right:0}
    .home-final .hero-index{
        left:6%;
        bottom:67px;
        color:#fff;
    }
    .home-final .hero-index div{background:rgba(255,255,255,.32)}
    .home-final .hero-index small{color:rgba(255,255,255,.7)}
}

@media(max-width:900px){
    .home-final .hero-v2{
        display:block;
        min-height:920px;
        height:920px;
        padding:86px 0 0;
        background:#fff;
    }
    .home-final .hero-v2-inner{
        height:auto;
        padding:40px 6% 0;
        align-items:initial;
    }
    .home-final .hero-v2-copy{display:block;max-width:none;transform:none}
    .home-final .hero-v2 h1{color:#181818;font-size:clamp(49px,12vw,70px);text-shadow:none}
    .home-final .hero-lead{color:#666;max-width:620px}
    .home-final .button-ghost{color:#181818;border-color:rgba(24,24,24,.25);background:#fff}
    .home-final .hero-v2-media{
        inset:510px 0 0;
        width:100%;
        height:auto;
        clip-path:none;
    }
    .home-final .hero-v2-media::after{background:linear-gradient(0deg,rgba(0,0,0,.22),transparent 50%)}
    .home-final .hero-v2-media img{object-position:center 55%}
    .home-final .hero-v2-shade{inset:510px 0 0;background:transparent}
    .home-final .hero-grid,.home-final .hero-proof,.home-final .hero-index{display:none}
}

@media(max-width:560px){
    .home-final .hero-v2{min-height:900px;height:900px}
    .home-final .hero-v2-inner{padding-top:34px}
    .home-final .hero-v2 h1{font-size:48px}
    .home-final .hero-lead{font-size:13px;line-height:1.55;margin-bottom:20px}
    .home-final .hero-actions{display:grid;gap:9px}
    .home-final .hero-actions .button{width:100%}
    .home-final .hero-v2-media,.home-final .hero-v2-shade{inset:520px 0 0}
}

/* Hero plein écran : texte directement sur une image généreuse */
.home-final .hero-v2{
    position:relative;
    display:flex;
    align-items:center;
    min-height:820px;
    height:100svh;
    max-height:960px;
    padding:88px 0 0;
    overflow:hidden;
    background:#181818;
}
.home-final .hero-v2-media{
    position:absolute;
    inset:88px 0 0;
    width:100%;
    height:auto;
    clip-path:none;
}
.home-final .hero-v2-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 55%;
    filter:saturate(.86) contrast(1.04);
}
.home-final .hero-v2-media::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.58) 40%,rgba(0,0,0,.08) 76%);
}
.home-final .hero-v2-shade{
    position:absolute;
    inset:88px 0 0;
    background:linear-gradient(0deg,rgba(0,0,0,.42),transparent 48%);
}
.home-final .hero-grid{
    display:block;
    position:absolute;
    inset:88px 0 0;
    opacity:.22;
    background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);
    background-size:calc(100vw / 6) 100%;
    mask-image:linear-gradient(to right,#000,transparent 76%);
}
.home-final .hero-v2-inner{
    position:relative;
    z-index:3;
    display:flex;
    align-items:center;
    height:100%;
    padding:40px 0 145px;
}
.home-final .hero-v2-copy{
    display:block;
    width:auto;
    max-width:730px;
    transform:none;
}
.home-final .hero-eyebrow{display:flex;margin-bottom:24px}
.home-final .hero-v2 h1{
    display:block;
    color:#fff;
    font-size:clamp(64px,6.8vw,104px);
    line-height:.87;
    margin:28px 0 0;
    text-shadow:0 10px 35px rgba(0,0,0,.28);
}
.home-final .hero-lead{
    display:block;
    max-width:590px;
    color:rgba(255,255,255,.82);
    font-size:16px;
    margin:0 0 30px;
}
.home-final .hero-actions{display:flex;gap:12px}
.home-final .button-ghost{color:#fff;border-color:rgba(255,255,255,.52);background:rgba(0,0,0,.08)}
.home-final .button-ghost:hover{background:#fff;color:#181818}
.home-final .hero-proof{
    position:absolute;
    z-index:4;
    top:auto;
    right:5%;
    bottom:34px;
    width:auto;
    padding:0 14px;
    display:flex;
    flex-direction:row;
    transform:none;
    background:#fff;
    box-shadow:0 14px 38px rgba(0,0,0,.18);
}
.home-final .hero-proof div{
    width:auto;
    min-width:145px;
    padding:14px 17px;
    border-bottom:0;
    border-right:1px solid rgba(24,24,24,.12);
}
.home-final .hero-proof div:last-child{border-right:0}
.home-final .hero-index{
    display:flex;
    left:5%;
    bottom:48px;
    color:#fff;
}
.home-final .hero-index div{background:rgba(255,255,255,.34)}
.home-final .hero-index small{color:rgba(255,255,255,.7)}

@media(max-width:900px){
    .home-final .hero-v2{min-height:760px;height:100svh;padding-top:82px}
    .home-final .hero-v2-media,.home-final .hero-v2-shade,.home-final .hero-grid{inset:82px 0 0}
    .home-final .hero-v2-media::after{background:linear-gradient(0deg,rgba(0,0,0,.78),rgba(0,0,0,.16) 78%)}
    .home-final .hero-v2-inner{display:flex;height:100%;padding:150px 6% 55px;align-items:flex-end}
    .home-final .hero-v2-copy{display:block;max-width:680px}
    .home-final .hero-v2 h1{color:#fff;font-size:clamp(51px,13vw,74px)}
    .home-final .hero-lead{color:rgba(255,255,255,.82)}
    .home-final .hero-proof,.home-final .hero-index{display:none}
}

@media(max-width:560px){
    .home-final .hero-v2{min-height:740px}
    .home-final .hero-v2-inner{padding:120px 6% 40px}
    .home-final .hero-v2 h1{font-size:48px}
    .home-final .hero-lead{font-size:13px;line-height:1.6}
    .home-final .hero-actions{display:grid;width:100%}
    .home-final .hero-actions .button{width:100%}
}

/* Hero minimal */
.home-final .hero-grid{display:none}
.home-final .hero-v2-inner{padding-bottom:45px}
.home-final .hero-v2-copy{max-width:790px}
.home-final .hero-v2 h1{font-size:clamp(68px,7.3vw,110px);line-height:.9;margin-bottom:22px}
.home-final .hero-lead{font-size:18px;margin-bottom:27px}
.home-final .hero-actions{display:block}
.home-final .hero-actions .button{min-width:210px}

/* Formulaire de devis */
.home-final .quote-section{scroll-margin-top:85px;background:#fff;border-top:1px solid var(--mf-line)}
.home-final .quote-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:100px;align-items:start}
.home-final .quote-intro{position:sticky;top:130px}
.home-final .quote-intro .eyebrow{margin-bottom:22px}
.home-final .quote-intro h2{font-family:'Oswald';font-size:clamp(48px,4.8vw,70px);line-height:1;letter-spacing:-.025em;text-transform:uppercase;color:#181818;margin:0 0 25px}
.home-final .quote-intro h2 em{color:var(--mf-orange)}
.home-final .quote-intro>p:not(.eyebrow){max-width:480px;color:#6d6d6d;font-size:14px;line-height:1.8;margin-bottom:35px}
.home-final .quote-contact-line{display:flex;align-items:center;gap:15px;padding-top:25px;border-top:1px solid var(--mf-line)}
.home-final .quote-contact-line>i{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#181818;color:#fff}
.home-final .quote-contact-line span{font-size:16px;font-weight:800;color:#181818}
.home-final .quote-contact-line small{display:block;margin-bottom:4px;color:#858585;font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.home-final .quote-form{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:48px;background:#f6f6f3;border-top:4px solid var(--mf-orange)}
.home-final .form-field{display:flex;flex-direction:column;gap:8px}
.home-final .form-field-wide{grid-column:1 / -1}
.home-final .form-field label{color:#181818;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.home-final .form-field input,
.home-final .form-field select,
.home-final .form-field textarea{width:100%;padding:15px 0;border:0;border-bottom:1px solid rgba(24,24,24,.22);border-radius:0;outline:0;background:transparent;color:#181818;font:500 14px 'Manrope',sans-serif;transition:border-color .25s}
.home-final .form-field textarea{resize:vertical;min-height:120px}
.home-final .form-field input::placeholder,
.home-final .form-field textarea::placeholder{color:#999}
.home-final .form-field input:focus,
.home-final .form-field select:focus,
.home-final .form-field textarea:focus{border-color:var(--mf-orange)}
.home-final .form-submit{grid-column:1 / -1;justify-self:start;margin-top:5px;border:0;cursor:pointer}
.home-final .form-note{grid-column:1 / -1;margin:0;color:#878787;font-size:9px}

@media(max-width:900px){
    .home-final .hero-v2-inner{padding-bottom:45px}
    .home-final .hero-v2 h1{font-size:clamp(54px,13vw,78px)}
    .home-final .quote-layout{grid-template-columns:1fr;gap:50px}
    .home-final .quote-intro{position:static}
}

@media(max-width:560px){
    .home-final .hero-v2 h1{font-size:49px}
    .home-final .hero-lead{font-size:14px}
    .home-final .hero-actions .button{min-width:0;width:100%}
    .home-final .quote-form{grid-template-columns:1fr;padding:30px 22px}
    .home-final .form-field-wide{grid-column:1}
    .home-final .form-submit,.home-final .form-note{grid-column:1;width:100%}
}

/* Hero — étape validée : deux textes et une flèche */
.home-final .main-nav{margin-left:auto}
.home-final .hero-v2-inner{padding-bottom:80px}
.home-final .hero-v2-copy{max-width:890px}
.home-final .hero-quote-button{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    width:fit-content;
    min-height:48px;
    padding:0 24px;
    margin:46px 0 0;
    border:1px solid rgba(255,255,255,.72);
    border-radius:999px;
    background:rgba(255,255,255,.1);
    backdrop-filter:blur(10px);
    color:#fff;
    font-family:'Manrope',sans-serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-decoration:none;
    text-transform:uppercase;
    transition:background .3s,border-color .3s,transform .3s,box-shadow .3s;
}
.home-final .hero-quote-button i{font-size:11px;transition:transform .3s}
.home-final .hero-quote-button:hover{
    background:var(--mf-orange);
    border-color:var(--mf-orange);
    color:#fff;
    transform:translateY(-3px);
    box-shadow:0 14px 30px rgba(245,130,32,.28);
}
.home-final .hero-quote-button:hover i{transform:translateX(4px)}
.home-final .hero-quote-button:focus-visible{outline:3px solid rgba(245,130,32,.45);outline-offset:4px}
.home-final .hero-v2 h1{
    font-family:'Manrope',sans-serif;
    font-size:clamp(58px,6.5vw,96px);
    font-weight:700;
    line-height:1.02;
    letter-spacing:-.055em;
    text-transform:none;
    color:#fff;
    margin:0 0 25px;
}
.home-final .hero-lead{
    max-width:780px;
    font-family:'Manrope',sans-serif;
    font-size:clamp(16px,1.45vw,20px);
    font-weight:500;
    line-height:1.65;
    letter-spacing:-.015em;
    color:var(--mf-orange);
    margin:0;
}
.home-final .hero-solution-arrow{
    position:absolute;
    z-index:8;
    left:50%;
    bottom:35px;
    width:62px;
    height:62px;
    display:flex;
    align-items:center;
    justify-content:center;
    transform:translateX(-50%);
    border:1px solid rgba(255,255,255,.7);
    border-radius:50%;
    background:rgba(255,255,255,.12);
    backdrop-filter:blur(10px);
    color:#fff;
    font-size:16px;
    transition:background .3s,border-color .3s,transform .3s;
    animation:heroArrowFloat 2.2s ease-in-out infinite;
}
.home-final .hero-solution-arrow:hover{
    background:var(--mf-orange);
    border-color:var(--mf-orange);
    transform:translateX(-50%) translateY(-5px);
}
@keyframes heroArrowFloat{
    0%,100%{margin-bottom:0}
    50%{margin-bottom:8px}
}

@media(max-width:900px){
    .home-final .hero-v2-inner{padding-bottom:95px}
    .home-final .hero-v2 h1{font-family:'Manrope',sans-serif;font-size:clamp(48px,11vw,70px);line-height:1.03}
    .home-final .hero-lead{font-family:'Manrope',sans-serif;font-size:15px;line-height:1.6}
    .home-final .hero-solution-arrow{width:54px;height:54px;bottom:24px}
}

@media(max-width:560px){
    .home-final .hero-quote-button{min-height:44px;padding:0 19px;margin:34px 0 0;font-size:10px}
    .home-final .hero-v2 h1{font-size:45px;letter-spacing:-.045em}
    .home-final .hero-lead{font-size:13px;line-height:1.55}
}

@media(prefers-reduced-motion:reduce){
    .home-final .hero-solution-arrow{animation:none}
}

/* Solutions — composition centrée et cartes éditoriales */
.home-final .solutions-v2{
    padding:110px 0 120px;
    overflow:hidden;
    background:#fff;
    scroll-margin-top:80px;
}
.home-final .solutions-v2>.container{
    width:min(88%,1180px);
    max-width:1180px;
}
.home-final .solutions-heading{
    display:block;
    max-width:1040px;
    margin:0 auto 68px;
    text-align:center;
}
.home-final .solutions-heading h2{
    font-family:'Oswald',sans-serif;
    font-size:clamp(58px,6.2vw,84px);
    font-weight:600;
    line-height:1.02;
    letter-spacing:-.035em;
    text-transform:none;
    color:#181818;
    margin:0;
}
.home-final .solutions-heading h2 em{
    color:var(--mf-orange);
    font-style:normal;
    letter-spacing:inherit;
}
.home-final .solutions-heading>p{
    max-width:760px;
    margin:28px auto 0;
    color:#666;
    font-family:'Manrope',sans-serif;
    font-size:clamp(15px,1.35vw,18px);
    font-weight:500;
    line-height:1.75;
}
.home-final .solutions-bento{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:repeat(2,320px);
    grid-auto-flow:row;
    grid-auto-rows:320px;
    gap:24px;
    max-width:1180px;
    margin:0 auto;
}
.home-final .solutions-bento .solution-main,
.home-final .solutions-bento .solution-fire,
.home-final .solutions-bento .solution-industry,
.home-final .solutions-bento .solution-custom{grid-column:auto;grid-row:auto}
.home-final .solutions-bento .solution-tile{
    min-height:0;
    overflow:hidden;
    border:1px solid rgba(24,24,24,.08);
    border-radius:30px;
    box-shadow:0 18px 50px rgba(24,24,24,.1);
    transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1),box-shadow .4s,border-color .4s;
}
.home-final .solutions-bento .solution-tile:hover{
    border-color:rgba(245,130,32,.42);
    transform:translateY(-8px);
    box-shadow:0 28px 65px rgba(24,24,24,.16);
}
.home-final .solutions-bento .solution-tile>img{
    filter:saturate(.82) contrast(1.03);
}
.home-final .solutions-bento .tile-gradient{
    background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.48) 48%,rgba(0,0,0,.06) 82%);
}
.home-final .solutions-bento .tile-copy{padding:32px 36px}
.home-final .solutions-bento .tile-copy h3{
    font-family:'Manrope',sans-serif;
    font-size:clamp(28px,3vw,40px);
    font-weight:700;
    line-height:1.08;
    letter-spacing:-.04em;
    text-transform:none;
    margin:7px 0 13px;
}
.home-final .solutions-bento .tile-copy>span{
    font-family:'Manrope',sans-serif;
    font-size:10px;
    letter-spacing:.12em;
}
.home-final .solutions-bento .tile-copy p{font-size:13px;line-height:1.65;margin-bottom:18px}
.home-final .solutions-bento .tile-number{
    top:22px;
    right:24px;
    padding:7px 11px;
    border:1px solid rgba(255,255,255,.45);
    border-radius:999px;
    background:rgba(0,0,0,.14);
    backdrop-filter:blur(8px);
    font-family:'Manrope',sans-serif;
    font-size:10px;
}
.home-final .solutions-bento .solution-custom{
    background:linear-gradient(135deg,#fff 0%,#f7f3ee 100%);
    border-color:rgba(245,130,32,.22);
}
.home-final .solutions-bento .solution-custom .tile-number{
    border-color:rgba(245,130,32,.3);
    background:rgba(245,130,32,.08);
    color:var(--mf-orange);
}

@media(max-width:900px){
    .home-final .solutions-v2{padding:95px 0 105px}
    .home-final .solutions-heading{margin-bottom:56px}
    .home-final .solutions-heading h2{font-size:clamp(52px,9vw,70px)}
    .home-final .solutions-bento{
        grid-template-columns:1fr;
        grid-template-rows:repeat(4,300px);
        grid-auto-rows:300px;
        gap:24px;
        max-width:720px;
    }
    .home-final .solutions-bento .solution-main,
    .home-final .solutions-bento .solution-fire,
    .home-final .solutions-bento .solution-industry,
    .home-final .solutions-bento .solution-custom{grid-column:1;grid-row:auto}
}

@media(max-width:560px){
    .home-final .solutions-v2{padding:78px 0 88px}
    .home-final .solutions-v2>.container{width:90%}
    .home-final .solutions-heading{margin-bottom:48px}
    .home-final .solutions-heading h2{font-size:46px;line-height:1.06;letter-spacing:-.03em}
    .home-final .solutions-heading>p{margin-top:22px;font-size:14px;line-height:1.7}
    .home-final .solutions-bento{grid-template-rows:repeat(4,285px);grid-auto-rows:285px;gap:18px}
    .home-final .solutions-bento .solution-tile{border-radius:22px}
    .home-final .solutions-bento .tile-copy{padding:25px 24px}
    .home-final .solutions-bento .tile-copy h3{font-size:29px}
    .home-final .solutions-bento .tile-copy p{font-size:12px}
    .home-final .solutions-bento .tile-number{top:17px;right:17px}
}

/* Premier impact — navigation et image principale */
.home-final .site-header{
    padding:16px 0;
    background:rgba(255,255,255,.97);
    border-bottom:1px solid rgba(24,24,24,.08);
    -webkit-backdrop-filter:blur(12px) saturate(1.15);
    backdrop-filter:blur(12px) saturate(1.15);
    box-shadow:none;
    transition:padding .35s,background .35s,box-shadow .35s,backdrop-filter .35s;
}
.home-final .site-header .logo{width:166px}
.home-final .site-header.active{
    padding:9px 0;
    background:rgba(255,255,255,.78);
    border-color:rgba(24,24,24,.08);
    -webkit-backdrop-filter:blur(24px) saturate(1.4);
    backdrop-filter:blur(24px) saturate(1.4);
    box-shadow:0 12px 36px rgba(24,24,24,.09);
}
.home-final .site-header.active .logo{width:150px}
.home-final .hero-v2{
    padding:0;
    background:#fff;
}
.home-final .hero-v2-media{inset:0}
.home-final .hero-v2-inner{
    height:100%;
    padding:120px 6% 50px;
    align-items:center;
    justify-content:center;
}
.home-final .hero-v2-media img{
    object-position:center;
    filter:blur(1.3px) saturate(.98) contrast(1.02) brightness(1.01);
    transform-origin:center;
    animation:heroPhotoBreath 16s ease-in-out infinite alternate;
}
.home-final .hero-v2-media::after{
    display:none;
}
.home-final .hero-v2-shade{
    display:none;
}
.home-final .hero-v2-copy{
    position:relative;
    z-index:1;
    isolation:isolate;
    width:min(92%,1040px);
    max-width:1040px;
    padding:30px 28px;
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    box-shadow:none;
    text-align:center;
    animation:heroGlassEnter .9s cubic-bezier(.16,1,.3,1) both;
}
.home-final .hero-v2-copy::before{
    display:none;
}
.home-final .hero-v2 h1{
    position:relative;
    max-width:940px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(60px,5.8vw,84px);
    font-weight:600;
    line-height:1;
    letter-spacing:-.02em;
    text-transform:none;
    color:#fff;
    margin:0 auto 22px;
    text-shadow:none;
}
.home-final .hero-v2 h1::before{
    content:"";
    display:block;
    width:76px;
    height:3px;
    margin:0 auto 20px;
    border-radius:999px;
    background:var(--mf-orange);
    box-shadow:0 0 18px rgba(245,130,32,.48);
}
.home-final .hero-v2 h1 span{
    display:inline-block;
    color:var(--mf-orange);
}
.home-final .hero-lead{
    width:fit-content;
    max-width:860px;
    padding:14px 22px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:16px;
    background:rgba(18,18,18,.46);
    -webkit-backdrop-filter:blur(9px) saturate(1.15);
    backdrop-filter:blur(9px) saturate(1.15);
    box-shadow:0 14px 34px rgba(0,0,0,.12);
    font-family:'DM Sans',sans-serif;
    font-size:clamp(15px,1.25vw,18px);
    font-weight:600;
    line-height:1.6;
    letter-spacing:0;
    color:#fff;
    margin:0 auto;
    text-shadow:none;
}
.home-final .hero-quote-button{
    min-height:47px;
    margin:44px auto 0;
    border-color:rgba(255,255,255,.7);
    background:rgba(18,18,18,.3);
    -webkit-backdrop-filter:blur(7px);
    backdrop-filter:blur(7px);
    color:#fff;
    box-shadow:none;
}
.home-final .hero-quote-button:hover{
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    color:#fff;
    box-shadow:0 14px 30px rgba(245,130,32,.28);
}
.home-final .hero-solution-arrow{
    border-color:rgba(24,24,24,.2);
    background:rgba(255,255,255,.54);
    color:#181818;
    box-shadow:0 12px 32px rgba(24,24,24,.12);
}
.home-final .hero-solution-arrow:hover{color:#fff}
@keyframes heroGlassEnter{
    from{opacity:0;transform:translateX(-45px)}
    to{opacity:1;transform:translateX(0)}
}
@keyframes heroPhotoBreath{
    from{transform:scale(1.015)}
    to{transform:scale(1.045)}
}

@media(max-width:900px){
    .home-final .site-header{padding:13px 0}
    .home-final .site-header .logo{width:150px}
    .home-final .site-header.active{padding:8px 0}
    .home-final .site-header.active .logo{width:140px}
    .home-final .site-header .main-nav{
        background:rgba(255,255,255,.88);
        -webkit-backdrop-filter:blur(22px);
        backdrop-filter:blur(22px);
    }
    .home-final .hero-v2{padding:0}
    .home-final .hero-v2-media{inset:0}
    .home-final .hero-v2-inner{padding:105px 5% 45px;align-items:center;justify-content:center}
    .home-final .hero-v2-media::after{display:none}
    .home-final .hero-v2-copy{width:min(96%,820px);max-width:820px;padding:26px 20px;border:0;border-radius:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
    .home-final .hero-v2-copy::before{display:none}
    .home-final .hero-v2 h1{font-size:clamp(54px,10vw,72px);line-height:1}
    .home-final .hero-lead{max-width:700px;padding:13px 18px;font-size:14px}
    .home-final .hero-quote-button{margin-top:36px}
}

@media(max-width:560px){
    .home-final .hero-v2-inner{padding:90px 4% 42px}
    .home-final .hero-v2-copy{width:98%;padding:22px 10px;background:transparent}
    .home-final .hero-v2-copy::before{display:none}
    .home-final .hero-v2 h1{font-size:46px;line-height:1.02;letter-spacing:-.015em}
    .home-final .hero-v2 h1::before{width:60px;margin-bottom:16px}
    .home-final .hero-lead{max-width:100%;padding:12px 14px;border-radius:13px;font-size:13px;line-height:1.55}
    .home-final .hero-quote-button{min-height:44px;margin:31px auto 0;padding:0 18px;font-size:10px}
}

@media(prefers-reduced-motion:reduce){
    .home-final .hero-v2-media img,
    .home-final .hero-v2-copy{animation:none}
}

/* Identité officielle WhatsApp */
.home-final .whatsapp-float{
    background:#25d366;
    color:#fff;
    box-shadow:0 14px 35px rgba(37,211,102,.3);
}
.home-final .whatsapp-float:hover{
    background:#1fb95a;
    color:#fff;
    box-shadow:0 18px 42px rgba(37,211,102,.38);
}
.home-final .whatsapp-float::before{background:rgba(37,211,102,.28)}

/* =========================================================
   QUI SOMMES-NOUS — HISTOIRE MAGRIBACHE
   ========================================================= */
.home-final .about-v3{
    position:relative;
    overflow:hidden;
    padding:104px 0 112px;
    background:#fff;
    color:#181818;
}
.home-final .about-v3::before{
    content:"";
    position:absolute;
    top:330px;
    right:-190px;
    width:430px;
    height:430px;
    border:1px solid rgba(245,130,32,.15);
    border-radius:50%;
    box-shadow:0 0 0 55px rgba(245,130,32,.035),0 0 0 110px rgba(245,130,32,.025);
    pointer-events:none;
}
.home-final .about-v3 .container{position:relative;z-index:1}
.home-final .about-v3-heading{
    position:relative;
    inset:auto;
    z-index:auto;
    width:min(100%,1040px);
    margin:0 auto 68px;
    padding:0;
    text-align:center;
}
.home-final .about-v3-section-title{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    width:min(100%,720px);
    margin:0 auto 29px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(29px,3vw,40px);
    font-weight:600;
    line-height:1;
    letter-spacing:.035em;
    text-transform:uppercase;
    color:#181818;
}
.home-final .about-v3-section-title::before,
.home-final .about-v3-section-title::after{
    content:"";
    width:clamp(38px,6vw,82px);
    height:2px;
    background:var(--mf-orange);
}
.home-final .about-v3-section-title span{white-space:nowrap}
.home-final .about-v3-section-title span::after{
    content:"";
    display:block;
    width:7px;
    height:7px;
    margin:12px auto 0;
    border-radius:50%;
    background:var(--mf-orange);
}
.home-final .about-v3-heading h2{
    margin:0;
    font-family:'Oswald',sans-serif;
    font-size:clamp(58px,6.2vw,84px);
    font-weight:600;
    line-height:1.02;
    letter-spacing:-.035em;
    text-transform:none;
    color:#171717;
}
.home-final .about-v3-heading h2 em{
    font-style:normal;
    font-weight:600;
    color:var(--mf-orange);
}
.home-final .about-v3-heading > p:last-child{
    max-width:760px;
    margin:28px auto 0;
    font-family:'Manrope',sans-serif;
    font-size:clamp(15px,1.35vw,18px);
    font-weight:500;
    line-height:1.75;
    color:#666;
}
.home-final .about-v3-intro{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    align-items:center;
    gap:clamp(45px,6vw,88px);
    max-width:1180px;
    margin:0 auto;
}
.home-final .about-v3-image{
    position:relative;
    height:520px;
    margin:0;
    overflow:hidden;
    border-radius:30px;
    background:#ecebe7;
    box-shadow:0 30px 70px rgba(23,23,23,.14);
}
.home-final .about-v3-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 48%,rgba(15,15,15,.58) 100%);
    pointer-events:none;
}
.home-final .about-v3-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:transform .8s cubic-bezier(.2,.7,.2,1);
}
.home-final .about-v3-image:hover img{transform:scale(1.035)}
.home-final .about-v3-image figcaption{
    position:absolute;
    z-index:2;
    left:24px;
    right:24px;
    bottom:24px;
    display:flex;
    align-items:center;
    gap:20px;
    min-height:84px;
    padding:15px 22px;
    border:1px solid rgba(255,255,255,.28);
    border-radius:18px;
    background:rgba(20,20,20,.68);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
    color:#fff;
}
.home-final .about-v3-image figcaption strong{
    flex:0 0 auto;
    font-family:'Oswald',sans-serif;
    font-size:38px;
    font-weight:600;
    line-height:1;
    color:var(--mf-orange);
}
.home-final .about-v3-image figcaption span{
    padding-left:20px;
    border-left:1px solid rgba(255,255,255,.25);
    font-family:'Manrope',sans-serif;
    font-size:13px;
    font-weight:700;
    line-height:1.45;
    letter-spacing:.02em;
}
.home-final .about-v3-summary{padding:8px 0}
.home-final .about-v3-kicker,
.home-final .about-v3-story-label{
    margin:0 0 19px;
    font-family:'Manrope',sans-serif;
    font-size:11px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--mf-orange);
}
.home-final .about-v3-summary h3{
    max-width:520px;
    margin:0 0 25px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(35px,3.7vw,52px);
    font-weight:600;
    line-height:1.08;
    letter-spacing:-.015em;
    color:#181818;
}
.home-final .about-v3-summary > p:not(.about-v3-kicker){
    max-width:565px;
    margin:0;
    font-family:'Manrope',sans-serif;
    font-size:15px;
    line-height:1.85;
    color:#696969;
}
.home-final .about-v3-values{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:38px;
}
.home-final .about-v3-values article{
    min-width:0;
    padding:18px 16px;
    border:1px solid #e7e5df;
    border-radius:16px;
    background:#fafaf8;
    transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.home-final .about-v3-values article:hover{
    transform:translateY(-4px);
    border-color:rgba(245,130,32,.45);
    box-shadow:0 14px 28px rgba(25,25,25,.07);
}
.home-final .about-v3-values strong{
    display:block;
    margin-bottom:12px;
    font-family:'Oswald',sans-serif;
    font-size:12px;
    letter-spacing:.12em;
    color:var(--mf-orange);
}
.home-final .about-v3-values span{
    display:block;
    font-family:'Manrope',sans-serif;
    font-size:13px;
    font-weight:800;
    color:#242424;
}
.home-final .about-v3-story{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:clamp(45px,7vw,105px);
    max-width:1180px;
    margin:88px auto 0;
    padding:58px 62px;
    overflow:hidden;
    border:1px solid #ebe8e0;
    border-radius:30px;
    background:#f7f6f2;
    box-shadow:0 24px 65px rgba(24,24,24,.075);
}
.home-final .about-v3-story::before{
    content:"2014";
    position:absolute;
    right:-12px;
    bottom:-42px;
    font-family:'Oswald',sans-serif;
    font-size:160px;
    font-weight:700;
    line-height:1;
    letter-spacing:-.05em;
    color:rgba(245,130,32,.055);
    pointer-events:none;
}
.home-final .about-v3-story h3{
    max-width:470px;
    margin:0;
    font-family:'Oswald',sans-serif;
    font-size:clamp(34px,3.2vw,48px);
    font-weight:600;
    line-height:1.12;
    letter-spacing:-.015em;
    color:#191919;
}
.home-final .about-v3-story-note{
    max-width:390px;
    margin:23px 0 0;
    font-family:'Manrope',sans-serif;
    font-size:13px;
    line-height:1.75;
    color:#77736c;
}
.home-final .about-v3-story-link{
    position:relative;
    overflow:hidden;
    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    width:min(100%,390px);
    min-height:76px;
    margin-top:29px;
    padding:12px 14px 12px 21px;
    border:1px solid var(--mf-orange);
    border-radius:20px;
    background:var(--mf-orange);
    font-family:'Manrope',sans-serif;
    color:#fff;
    box-shadow:0 16px 35px rgba(245,130,32,.22);
    animation:storyLinkPulse 3.5s ease-in-out infinite;
    transition:background .3s ease,border-color .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease;
}
.home-final .about-v3-story-link::before{
    content:"";
    position:absolute;
    top:-40%;
    bottom:-40%;
    left:-35%;
    width:25%;
    background:rgba(255,255,255,.2);
    transform:skewX(-20deg);
    transition:left .6s ease;
}
.home-final .about-v3-story-link>span{
    position:relative;
    z-index:1;
    display:grid;
    gap:5px;
    text-align:left;
}
.home-final .about-v3-story-link small{
    font-size:8px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:rgba(255,255,255,.72);
}
.home-final .about-v3-story-link strong{
    font-family:'Oswald',sans-serif;
    font-size:19px;
    font-weight:600;
    line-height:1.1;
    letter-spacing:.01em;
    color:#fff;
}
.home-final .about-v3-story-link i{
    position:relative;
    z-index:1;
    flex:0 0 auto;
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:50%;
    background:#fff;
    color:var(--mf-orange);
    font-size:12px;
    transition:transform .3s ease,background .3s ease,color .3s ease;
}
.home-final .about-v3-story-link:hover{
    transform:translateY(-4px);
    border-color:#181818;
    background:#181818;
    color:#fff;
    box-shadow:0 20px 42px rgba(24,24,24,.18);
}
.home-final .about-v3-story-link:hover::before{left:120%}
.home-final .about-v3-story-link:hover i{transform:translateX(4px);background:var(--mf-orange);color:#fff}
@keyframes storyLinkPulse{
    0%,100%{box-shadow:0 16px 35px rgba(245,130,32,.22)}
    50%{box-shadow:0 20px 42px rgba(245,130,32,.35)}
}
.home-final .about-v3-story-timeline{
    position:relative;
    z-index:1;
    display:grid;
    gap:0;
    padding-left:38px;
}
.home-final .about-v3-story-timeline::before{
    content:"";
    position:absolute;
    left:5px;
    top:11px;
    bottom:14px;
    width:2px;
    background:linear-gradient(var(--mf-orange),rgba(245,130,32,.16));
}
.home-final .about-v3-story-timeline article{
    position:relative;
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    gap:22px;
    padding:0 0 30px;
}
.home-final .about-v3-story-timeline article + article{
    padding-top:30px;
    border-top:1px solid #dfddd6;
}
.home-final .about-v3-story-timeline article:last-child{padding-bottom:0}
.home-final .about-v3-story-timeline article::before{
    content:"";
    position:absolute;
    left:-38px;
    top:7px;
    width:12px;
    height:12px;
    border:3px solid #f7f6f2;
    border-radius:50%;
    background:var(--mf-orange);
    box-shadow:0 0 0 1px var(--mf-orange);
}
.home-final .about-v3-story-timeline article + article::before{top:37px}
.home-final .about-v3-story-year{
    font-family:'Oswald',sans-serif;
    font-size:19px;
    font-weight:600;
    line-height:1.2;
    color:var(--mf-orange);
}
.home-final .about-v3-story-timeline h4{
    margin:0 0 10px;
    font-family:'Manrope',sans-serif;
    font-size:15px;
    font-weight:800;
    line-height:1.35;
    color:#222;
}
.home-final .about-v3-story-timeline p{
    margin:0;
    font-family:'Manrope',sans-serif;
    font-size:13px;
    line-height:1.8;
    color:#696969;
}

@media(max-width:900px){
    .home-final .about-v3{padding:88px 0 94px}
    .home-final .about-v3-heading{margin-bottom:50px}
    .home-final .about-v3-heading h2{font-size:clamp(52px,9vw,70px)}
    .home-final .about-v3-section-title{font-size:clamp(26px,4vw,34px)}
    .home-final .about-v3-intro{grid-template-columns:1fr;gap:45px}
    .home-final .about-v3-image{height:500px}
    .home-final .about-v3-summary{max-width:680px;margin:0 auto}
    .home-final .about-v3-story{grid-template-columns:1fr;gap:42px;margin-top:70px;padding:48px}
}

@media(max-width:640px){
    .home-final .about-v3{padding:76px 0 82px}
    .home-final .about-v3::before{display:none}
    .home-final .about-v3-heading{margin-bottom:42px}
    .home-final .about-v3-section-title{gap:12px;margin-bottom:24px;font-size:26px}
    .home-final .about-v3-section-title::before,.home-final .about-v3-section-title::after{width:28px}
    .home-final .about-v3-heading h2{font-size:46px;line-height:1.06;letter-spacing:-.03em}
    .home-final .about-v3-heading > p:last-child{margin-top:22px;font-size:14px;line-height:1.7}
    .home-final .about-v3-image{height:390px;border-radius:22px}
    .home-final .about-v3-image figcaption{left:14px;right:14px;bottom:14px;min-height:70px;padding:12px 15px;border-radius:14px}
    .home-final .about-v3-image figcaption strong{font-size:31px}
    .home-final .about-v3-image figcaption span{padding-left:14px;font-size:11px}
    .home-final .about-v3-summary h3{font-size:38px}
    .home-final .about-v3-summary > p:not(.about-v3-kicker){font-size:14px;line-height:1.75}
    .home-final .about-v3-values{gap:7px;margin-top:30px}
    .home-final .about-v3-values article{padding:15px 10px;border-radius:13px}
    .home-final .about-v3-values span{font-size:11px}
    .home-final .about-v3-story{margin-top:56px;padding:35px 24px;border-radius:22px}
    .home-final .about-v3-story::before{right:-8px;bottom:-20px;font-size:105px}
    .home-final .about-v3-story h3{font-size:37px}
    .home-final .about-v3-story-timeline{padding-left:30px}
    .home-final .about-v3-story-timeline article{grid-template-columns:1fr;gap:9px;padding-bottom:26px}
    .home-final .about-v3-story-timeline article + article{padding-top:26px}
    .home-final .about-v3-story-timeline article::before{left:-30px}
    .home-final .about-v3-story-timeline article + article::before{top:33px}
}

@media(prefers-reduced-motion:reduce){
    .home-final .about-v3-story-link{animation:none}
}

/* ========================================================================== */
/* INDEX — CHIFFRES, CINQ RAISONS ET DEVIS                                   */
/* ========================================================================== */

.home-final .numbers-v2,
.home-final .reasons-final,
.home-final .quote-section{
    position:relative;
    overflow:hidden;
    padding:112px 0 120px;
}
.home-final .numbers-v2,
.home-final .quote-section{
    background:#fff;
}
.home-final .reasons-final{
    background:#f5f4ef;
}
.home-final .numbers-v2::before{
    display:none;
}
.home-final .numbers-title,
.home-final .reasons-heading,
.home-final .quote-heading{
    width:min(100%,1040px);
    margin:0 auto 68px;
    text-align:center;
}
.home-final .numbers-title .eyebrow,
.home-final .reasons-heading .eyebrow,
.home-final .quote-heading .eyebrow{
    justify-content:center;
    margin-bottom:20px;
    color:#6b6b6b;
}
.home-final .numbers-title h2,
.home-final .reasons-heading h2,
.home-final .quote-heading h2{
    margin:0;
    font-family:'Oswald',sans-serif;
    font-size:clamp(58px,6.2vw,84px);
    font-weight:600;
    line-height:1.02;
    letter-spacing:-.035em;
    text-transform:none;
    color:#181818;
}
.home-final .numbers-title h2 em,
.home-final .reasons-heading h2 em,
.home-final .quote-heading h2 em{
    font-style:normal;
    color:var(--mf-orange);
}
.home-final .numbers-intro,
.home-final .reasons-intro,
.home-final .quote-heading > p:not(.eyebrow){
    width:min(100%,760px);
    margin:28px auto 0;
    font-family:'Manrope',sans-serif;
    font-size:clamp(15px,1.35vw,18px);
    font-weight:500;
    line-height:1.75;
    color:#666;
}

/* Chiffres */
.home-final .numbers-v2{
    border-top:1px solid #ece9e3;
    border-bottom:1px solid #ece9e3;
}
.home-final .numbers-grid{
    display:block;
}
.home-final .numbers-list{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    width:min(100%,1180px);
    margin:0 auto;
    border:0;
}
.home-final .numbers-list article{
    position:relative;
    display:flex;
    min-width:0;
    min-height:246px;
    flex-direction:column;
    justify-content:flex-end;
    align-items:flex-start;
    padding:30px;
    overflow:hidden;
    border:1px solid #e7e3da;
    border-radius:24px;
    background:#f7f6f2;
    text-align:left;
    transition:transform .35s ease,background-color .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.home-final .numbers-list article::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:86px;
    height:5px;
    border-radius:0 0 6px 0;
    background:var(--mf-orange);
    transition:width .35s ease;
}
.home-final .numbers-list article b{
    position:absolute;
    top:25px;
    right:27px;
    font-family:'Oswald',sans-serif;
    font-size:14px;
    font-weight:600;
    letter-spacing:.14em;
    color:var(--mf-orange);
}
.home-final .numbers-list article strong{
    display:flex;
    align-items:flex-start;
    margin:0 0 17px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(50px,4.6vw,70px);
    font-weight:600;
    line-height:.9;
    letter-spacing:-.045em;
    color:var(--mf-orange);
}
.home-final .numbers-list article strong sup{
    margin:3px 0 0 4px;
    font-size:.4em;
    line-height:1;
    color:inherit;
}
.home-final .numbers-list article p{
    margin:0;
    font-family:'Manrope',sans-serif;
    font-size:12px;
    font-weight:800;
    line-height:1.45;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:#292929;
    transition:color .35s ease;
}
.home-final .numbers-list article:hover{
    transform:translateY(-8px);
    border-color:#181818;
    background:#181818;
    box-shadow:0 24px 50px rgba(24,24,24,.16);
}
.home-final .numbers-list article:hover::before{
    width:100%;
}
.home-final .numbers-list article:hover p{
    color:#fff;
}

/* Cinq raisons */
.home-final .reasons-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:18px;
    width:min(100%,1180px);
    margin:0 auto;
    border:0;
}
.home-final .reason-card{
    position:relative;
    grid-column:span 2;
    min-height:278px;
    padding:32px;
    overflow:hidden;
    border:1px solid #e4e0d7;
    border-radius:24px;
    background:#fff;
    transition:transform .35s ease,background-color .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.home-final .reason-card:nth-child(4),
.home-final .reason-card:nth-child(5){
    grid-column:span 3;
}
.home-final .reason-card > span{
    position:absolute;
    top:30px;
    right:30px;
    font-family:'Oswald',sans-serif;
    font-size:14px;
    font-weight:600;
    letter-spacing:.14em;
    color:var(--mf-orange);
}
.home-final .reason-card > i{
    display:grid;
    width:74px;
    height:74px;
    margin:0 0 42px;
    place-items:center;
    border:1px solid rgba(245,130,32,.22);
    border-radius:20px;
    background:rgba(245,130,32,.1);
    font-size:29px;
    color:var(--mf-orange);
    transition:transform .35s ease,background-color .35s ease,border-color .35s ease;
}
.home-final .reason-card h3{
    margin:0 0 12px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(25px,2.1vw,31px);
    font-weight:600;
    line-height:1.15;
    letter-spacing:-.02em;
    text-transform:none;
    color:#1b1b1b;
    transition:color .35s ease;
}
.home-final .reason-card p{
    max-width:440px;
    margin:0;
    font-family:'Manrope',sans-serif;
    font-size:14px;
    line-height:1.75;
    color:#696969;
    transition:color .35s ease;
}
.home-final .reason-card:hover{
    transform:translateY(-8px);
    border-color:#181818;
    background:#181818;
    box-shadow:0 24px 50px rgba(24,24,24,.16);
}
.home-final .reason-card:hover > i{
    transform:rotate(-5deg) scale(1.06);
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    color:#fff;
}
.home-final .reason-card:hover h3{
    color:#fff;
}
.home-final .reason-card:hover p{
    color:rgba(255,255,255,.68);
}

/* Demande de devis */
.home-final .quote-section{
    border-top:1px solid #ece9e3;
}
.home-final .quote-contact-line{
    display:inline-flex;
    width:auto;
    align-items:center;
    gap:13px;
    margin-top:30px;
    padding:10px 18px 10px 11px;
    border:1px solid #e8e4db;
    border-radius:999px;
    background:#f7f6f2;
    text-align:left;
}
.home-final .quote-contact-line i{
    display:grid;
    width:43px;
    height:43px;
    flex:0 0 43px;
    place-items:center;
    border-radius:50%;
    background:var(--mf-orange);
    font-size:16px;
    color:#fff;
}
.home-final .quote-contact-line span{
    font-family:'Oswald',sans-serif;
    font-size:17px;
    font-weight:600;
    line-height:1.15;
    color:#181818;
}
.home-final .quote-contact-line small{
    display:block;
    margin-bottom:4px;
    font-family:'Manrope',sans-serif;
    font-size:9px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.11em;
    text-transform:uppercase;
    color:#777;
}
.home-final .quote-form{
    position:relative;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:17px 18px;
    width:min(100%,1050px);
    margin:0 auto;
    padding:50px;
    overflow:hidden;
    border:1px solid #e4e0d7;
    border-radius:30px;
    background:#f5f4ef;
    box-shadow:0 30px 80px rgba(31,29,25,.08);
}
.home-final .quote-form::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:190px;
    height:5px;
    border-radius:0 0 6px 0;
    background:var(--mf-orange);
}
.home-final .quote-form .form-field{
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:2px;
    padding:13px 18px 11px;
    border:1px solid #e2dfd7;
    border-radius:16px;
    background:#fff;
    transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.home-final .quote-form .form-field:focus-within{
    transform:translateY(-2px);
    border-color:var(--mf-orange);
    box-shadow:0 10px 24px rgba(245,130,32,.1);
}
.home-final .quote-form .form-field-wide{
    grid-column:1 / -1;
}
.home-final .quote-form label{
    font-family:'Manrope',sans-serif;
    font-size:9px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--mf-orange);
}
.home-final .quote-form input,
.home-final .quote-form select,
.home-final .quote-form textarea{
    width:100%;
    min-height:34px;
    padding:6px 0 0;
    border:0 !important;
    outline:0;
    background:transparent;
    box-shadow:none !important;
    font-family:'Manrope',sans-serif;
    font-size:14px;
    font-weight:600;
    color:#222;
}
.home-final .quote-form textarea{
    min-height:105px;
    resize:vertical;
}
.home-final .quote-form input::placeholder,
.home-final .quote-form textarea::placeholder{
    color:#999;
}
.home-final .quote-form .form-submit{
    grid-column:1 / -1;
    justify-self:center;
    min-width:290px;
    min-height:56px;
    margin-top:15px;
    border:1px solid #181818;
    border-radius:999px;
    background:#181818;
    font-family:'Manrope',sans-serif;
    font-size:11px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
    color:#fff;
    transition:transform .25s ease,background-color .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.home-final .quote-form .form-submit:hover{
    transform:translateY(-3px);
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    box-shadow:0 14px 30px rgba(245,130,32,.22);
}
.home-final .quote-form .form-note{
    grid-column:1 / -1;
    margin:1px 0 0;
    text-align:center;
    font-family:'Manrope',sans-serif;
    font-size:11px;
    line-height:1.6;
    color:#888;
}
.home-final .quote-form .form-trap{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
    clip:rect(0 0 0 0) !important;
    clip-path:inset(50%) !important;
    white-space:nowrap !important;
}
.home-final .quote-form .form-status{
    grid-column:1 / -1;
    min-height:24px;
    margin:0;
    text-align:center;
    font-family:'Manrope',sans-serif;
    font-size:13px;
    font-weight:700;
    line-height:1.55;
    color:#666;
}
.home-final .quote-form .form-status:empty{display:none}
.home-final .quote-form .form-status.is-success{color:#267347}
.home-final .quote-form .form-status.is-error{color:#a52a2a}
.home-final .quote-form .form-submit:disabled{
    cursor:wait;
    transform:none;
    border-color:#666;
    background:#666;
    box-shadow:none;
    opacity:.8;
}

@media(max-width:900px){
    .home-final .numbers-v2,
    .home-final .reasons-final,
    .home-final .quote-section{padding:92px 0 100px}
    .home-final .numbers-title,
    .home-final .reasons-heading,
    .home-final .quote-heading{margin-bottom:54px}
    .home-final .numbers-list{grid-template-columns:repeat(2,minmax(0,1fr))}
    .home-final .reasons-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .home-final .reason-card,
    .home-final .reason-card:nth-child(4),
    .home-final .reason-card:nth-child(5){grid-column:auto}
    .home-final .reason-card:nth-child(5){grid-column:1 / -1}
    .home-final .quote-form{padding:40px}
}

@media(max-width:640px){
    .home-final .numbers-v2,
    .home-final .reasons-final,
    .home-final .quote-section{padding:76px 0 82px}
    .home-final .numbers-title,
    .home-final .reasons-heading,
    .home-final .quote-heading{margin-bottom:43px}
    .home-final .numbers-title h2,
    .home-final .reasons-heading h2,
    .home-final .quote-heading h2{
        font-size:46px;
        line-height:1.06;
        letter-spacing:-.03em;
    }
    .home-final .numbers-intro,
    .home-final .reasons-intro,
    .home-final .quote-heading > p:not(.eyebrow){
        margin-top:22px;
        font-size:14px;
        line-height:1.7;
    }
    .home-final .numbers-list,
    .home-final .reasons-grid{grid-template-columns:1fr;gap:13px}
    .home-final .numbers-list article{min-height:210px;padding:26px}
    .home-final .numbers-list article strong{font-size:58px}
    .home-final .reason-card,
    .home-final .reason-card:nth-child(5){grid-column:auto;min-height:250px;padding:27px}
    .home-final .reason-card > i{width:66px;height:66px;margin-bottom:34px;border-radius:18px;font-size:25px}
    .home-final .quote-contact-line{margin-top:25px}
    .home-final .quote-form{grid-template-columns:1fr;padding:27px 20px;border-radius:23px}
    .home-final .quote-form .form-field-wide,
    .home-final .quote-form .form-submit,
    .home-final .quote-form .form-note{grid-column:1}
    .home-final .quote-form .form-submit{width:100%;min-width:0}
}

@media(prefers-reduced-motion:reduce){
    .home-final .numbers-list article,
    .home-final .reason-card,
    .home-final .reason-card > i,
    .home-final .quote-form .form-field,
    .home-final .quote-form .form-submit{transition:none}
}

/* ========================================================================== */
/* INDEX — AJUSTEMENTS DES SECTIONS APRÈS VALIDATION                         */
/* ========================================================================== */

/* Intertitres majeurs : même présence que « Qui sommes-nous ? » */
.home-final .numbers-title .eyebrow,
.home-final .reasons-heading .eyebrow,
.home-final .quote-heading .eyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    width:min(100%,920px);
    margin:0 auto 29px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(29px,3vw,40px);
    font-weight:600;
    line-height:1;
    letter-spacing:.035em;
    text-transform:uppercase;
    color:#181818;
}
.home-final .numbers-title .eyebrow > span,
.home-final .reasons-heading .eyebrow > span,
.home-final .quote-heading .eyebrow > span,
.home-final .numbers-title .eyebrow::after,
.home-final .reasons-heading .eyebrow::after,
.home-final .quote-heading .eyebrow::after{
    content:"";
    display:block;
    width:clamp(38px,6vw,82px);
    height:2px;
    flex:0 1 82px;
    background:var(--mf-orange);
}

/* Magribache en chiffres */
.home-final .numbers-v2{
    padding:76px 0 112px;
}
.home-final .numbers-title{
    margin-bottom:56px;
}
.home-final .numbers-list{
    gap:16px;
}
.home-final .numbers-list article{
    min-height:232px;
    padding:29px;
    border-color:#e7e3da;
    background:#fff;
    box-shadow:0 16px 42px rgba(24,24,24,.06);
}
.home-final .numbers-list article strong{
    color:#181818;
}
.home-final .numbers-list article strong sup{
    color:var(--mf-orange);
}
.home-final .numbers-list article:first-child{
    border-color:#181818;
    background:#181818;
}
.home-final .numbers-list article:first-child::before{
    width:100%;
}
.home-final .numbers-list article:first-child strong{
    color:var(--mf-orange);
}
.home-final .numbers-list article:first-child p{
    color:#fff;
}
.home-final .numbers-list article:hover strong{
    color:var(--mf-orange);
}

/* Les cinq raisons deviennent une liste claire, rythmée et sans cartes massives */
.home-final .reasons-final{
    padding:104px 0 116px;
    background:#fff;
    border-bottom:1px solid #ece9e3;
}
.home-final .reasons-heading{
    margin-bottom:58px;
}
.home-final .reasons-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:0;
    width:min(100%,1100px);
    border-top:1px solid #dedbd3;
}
.home-final .reason-card,
.home-final .reason-card:nth-child(4),
.home-final .reason-card:nth-child(5){
    position:relative;
    display:grid;
    grid-column:auto;
    grid-template-columns:68px 54px minmax(220px,.85fr) minmax(0,1.25fr);
    gap:26px;
    align-items:center;
    min-height:136px;
    padding:24px 22px;
    overflow:hidden;
    border:0;
    border-bottom:1px solid #dedbd3;
    border-radius:0;
    background:#fff;
    box-shadow:none;
}
.home-final .reason-card::before{
    content:"";
    position:absolute;
    top:20%;
    bottom:20%;
    left:0;
    width:4px;
    border-radius:0 4px 4px 0;
    background:var(--mf-orange);
    transform:scaleY(0);
    transform-origin:center;
    transition:transform .3s ease;
}
.home-final .reason-card > i{
    width:64px;
    height:64px;
    margin:0;
    border:1px solid rgba(245,130,32,.2);
    border-radius:18px;
    background:rgba(245,130,32,.09);
    font-size:25px;
    color:var(--mf-orange);
}
.home-final .reason-card > span{
    position:static;
    font-family:'Oswald',sans-serif;
    font-size:17px;
    font-weight:600;
    line-height:1;
    letter-spacing:.12em;
    color:var(--mf-orange);
}
.home-final .reason-card h3{
    margin:0;
    font-size:clamp(25px,2vw,31px);
}
.home-final .reason-card p{
    max-width:none;
    margin:0;
    font-size:14px;
    line-height:1.72;
}
@media(hover:hover){
    .home-final .reason-card:hover{
        transform:translateX(8px);
        border-color:#181818;
        background:#181818;
        box-shadow:0 18px 42px rgba(24,24,24,.12);
    }
    .home-final .reason-card:hover::before{transform:scaleY(1)}
    .home-final .reason-card:hover > i{
        transform:rotate(-5deg) scale(1.04);
        border-color:var(--mf-orange);
        background:var(--mf-orange);
        color:#fff;
    }
}

/* Devis : moins de friction, cinq informations seulement */
.home-final .quote-section{
    padding:104px 0 116px;
}
.home-final .quote-heading{
    margin-bottom:50px;
}
.home-final .quote-form{
    width:min(100%,960px);
    gap:15px;
    padding:38px;
    border-radius:26px;
    box-shadow:0 24px 65px rgba(24,24,24,.07);
}
.home-final .quote-form .form-field{
    min-height:78px;
    justify-content:center;
    padding:12px 18px 10px;
    border-radius:14px;
}
.home-final .quote-form .form-submit{
    min-width:300px;
    margin-top:12px;
}

/* Contact : continuité blanche inspirée du bloc final de la page Histoire */
.home-final .contact-v2{
    position:relative;
    overflow:hidden;
    padding:86px 0 96px;
    border-top:1px solid #ebe8e1;
    background:#fff;
    color:#181818;
}
.home-final .contact-backdrop{
    left:-20px;
    bottom:-90px;
    font-size:230px;
    font-weight:700;
    color:rgba(24,24,24,.025);
}
.home-final .contact-v2-inner{
    position:relative;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:60px;
    align-items:center;
    padding:58px 62px;
    overflow:hidden;
    border:1px solid #e3e0d8;
    border-radius:30px;
    background:#f5f4ef;
    box-shadow:0 24px 60px rgba(24,24,24,.07);
}
.home-final .contact-v2-inner::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:150px;
    height:5px;
    background:var(--mf-orange);
}
.home-final .contact-v2 .eyebrow.light{
    color:#77736c;
}
.home-final .contact-v2 .eyebrow.light span{
    background:var(--mf-orange);
}
.home-final .contact-v2 h2{
    margin:20px 0 0;
    font-family:'Oswald',sans-serif;
    font-size:clamp(56px,5.7vw,82px);
    font-weight:600;
    line-height:.98;
    letter-spacing:-.035em;
    text-transform:none;
    color:#181818;
}
.home-final .contact-v2 h2 em{
    font-style:normal;
    color:var(--mf-orange);
}
.home-final .contact-actions{
    gap:12px;
}
.home-final .contact-actions > a{
    min-height:82px;
    padding:14px 18px;
    border:1px solid #e2ded5;
    border-radius:18px;
    background:#fff;
    color:#181818;
    box-shadow:none;
}
.home-final .contact-actions i{
    width:50px;
    height:50px;
    border-radius:50%;
    background:rgba(245,130,32,.1);
    color:var(--mf-orange);
}
.home-final .contact-actions span{
    font-family:'Manrope',sans-serif;
    font-size:14px;
    font-weight:800;
    color:#181818;
}
.home-final .contact-actions small{
    color:#77736c;
}
@media(hover:hover){
    .home-final .contact-actions > a:hover{
        transform:translateX(7px);
        border-color:#181818;
        background:#181818;
        color:#fff;
    }
    .home-final .contact-actions > a:hover span,
    .home-final .contact-actions > a:hover small{color:#fff}
    .home-final .contact-actions > a:hover i{background:var(--mf-orange);color:#fff}
}

@media(max-width:900px){
    .home-final .numbers-v2{padding:70px 0 96px}
    .home-final .reasons-final,
    .home-final .quote-section{padding:90px 0 100px}
    .home-final .reason-card,
    .home-final .reason-card:nth-child(4),
    .home-final .reason-card:nth-child(5){
        grid-template-columns:64px 48px minmax(190px,.9fr) minmax(0,1.1fr);
        gap:20px;
        padding:22px 16px;
    }
    .home-final .contact-v2-inner{grid-template-columns:1fr;gap:38px;padding:48px}
}

@media(max-width:640px){
    .home-final .numbers-title .eyebrow,
    .home-final .reasons-heading .eyebrow,
    .home-final .quote-heading .eyebrow{
        gap:11px;
        margin-bottom:24px;
        font-size:23px;
        line-height:1.12;
    }
    .home-final .numbers-title .eyebrow > span,
    .home-final .reasons-heading .eyebrow > span,
    .home-final .quote-heading .eyebrow > span,
    .home-final .numbers-title .eyebrow::after,
    .home-final .reasons-heading .eyebrow::after,
    .home-final .quote-heading .eyebrow::after{
        width:24px;
        flex-basis:24px;
    }
    .home-final .numbers-v2{padding:62px 0 82px}
    .home-final .numbers-title{margin-bottom:42px}
    .home-final .numbers-list article{min-height:196px}
    .home-final .reasons-final,
    .home-final .quote-section{padding:76px 0 82px}
    .home-final .reasons-heading,
    .home-final .quote-heading{margin-bottom:43px}
    .home-final .reason-card,
    .home-final .reason-card:nth-child(4),
    .home-final .reason-card:nth-child(5){
        grid-template-columns:62px 1fr;
        grid-template-areas:"icon number" "title title" "copy copy";
        gap:18px 16px;
        min-height:0;
        padding:25px 5px;
    }
    .home-final .reason-card > i{grid-area:icon;width:58px;height:58px;border-radius:16px;font-size:22px}
    .home-final .reason-card > span{grid-area:number;justify-self:end;padding-right:6px}
    .home-final .reason-card h3{grid-area:title;font-size:27px}
    .home-final .reason-card p{grid-area:copy;font-size:13px}
    .home-final .quote-form{padding:25px 18px;border-radius:22px}
    .home-final .quote-form .form-submit{min-width:0;width:100%}
    .home-final .contact-v2{padding:66px 0 74px}
    .home-final .contact-v2-inner{gap:32px;padding:38px 24px;border-radius:22px}
    .home-final .contact-v2 h2{font-size:49px}
    .home-final .contact-actions > a{min-height:76px;padding:12px 14px}
}

/* ========================================================================== */
/* INDEX — CHIFFRES UNIFORMES, AVANTAGES COMPACTS ET TITRE CONTACT           */
/* ========================================================================== */

/* Les quatre repères gardent exactement le même fond blanc */
.home-final .numbers-list article:first-child{
    border-color:#e7e3da;
    background:#fff;
}
.home-final .numbers-list article:first-child::before{
    width:86px;
}
.home-final .numbers-list article:first-child strong{
    color:#181818;
}
.home-final .numbers-list article:first-child p{
    color:#292929;
}
@media(hover:hover){
    .home-final .numbers-list article:first-child:hover{
        border-color:#181818;
        background:#181818;
    }
    .home-final .numbers-list article:first-child:hover::before{width:100%}
    .home-final .numbers-list article:first-child:hover strong{color:var(--mf-orange)}
    .home-final .numbers-list article:first-child:hover p{color:#fff}
}

/* Une seule bande de cinq avantages : compacte sur ordinateur, coulissante sur mobile */
.home-final .reasons-final{
    padding-bottom:104px;
}
.home-final .reasons-heading{
    margin-bottom:52px;
}
.home-final .reasons-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:0;
    width:min(100%,1180px);
    overflow:hidden;
    border:1px solid #dedbd3;
    border-radius:26px;
    background:#fff;
}
.home-final .reason-card,
.home-final .reason-card:nth-child(4),
.home-final .reason-card:nth-child(5){
    position:relative;
    display:flex;
    grid-column:auto;
    min-height:286px;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    padding:28px 23px 26px;
    border:0;
    border-right:1px solid #dedbd3;
    border-radius:0;
    background:#fff;
    box-shadow:none;
    scroll-snap-align:start;
}
.home-final .reason-card:last-child{
    border-right:0;
}
.home-final .reason-card::before{
    top:0;
    right:0;
    bottom:auto;
    left:0;
    width:100%;
    height:5px;
    border-radius:0;
    transform:scaleX(0);
    transform-origin:left;
}
.home-final .reason-card > i{
    flex:0 0 auto;
    width:66px;
    height:66px;
    margin:0 0 40px;
    border-radius:18px;
    font-size:26px;
}
.home-final .reason-card > span{
    position:absolute;
    top:30px;
    right:22px;
    padding:0;
    font-size:15px;
}
.home-final .reason-card h3{
    margin:0 0 13px;
    font-size:clamp(24px,1.85vw,28px);
    font-weight:700;
    line-height:1.12;
}
.home-final .reason-card p{
    margin:0;
    font-size:13px;
    font-weight:500;
    line-height:1.68;
}
@media(hover:hover){
    .home-final .reason-card:hover{
        transform:none;
        border-color:#181818;
        background:#181818;
        box-shadow:0 20px 45px rgba(24,24,24,.14);
    }
    .home-final .reason-card:hover::before{transform:scaleX(1)}
}

/* « Votre projet commence ici » devient le vrai titre de la section contact */
.home-final .contact-v2 h2.contact-section-title{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    width:min(100%,920px);
    margin:0 auto 56px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(29px,3vw,40px);
    font-weight:600;
    line-height:1;
    letter-spacing:.035em;
    text-align:center;
    text-transform:uppercase;
    color:#181818;
}
.home-final .contact-v2 h2.contact-section-title::before,
.home-final .contact-v2 h2.contact-section-title::after{
    content:"";
    width:clamp(38px,6vw,82px);
    height:2px;
    flex:0 1 82px;
    background:var(--mf-orange);
}
.home-final .contact-v2 h2.contact-section-title span::after{
    content:"";
    display:block;
    width:7px;
    height:7px;
    margin:12px auto 0;
    border-radius:50%;
    background:var(--mf-orange);
}
.home-final .contact-v2 h3{
    margin:0;
    font-family:'Oswald',sans-serif;
    font-size:clamp(56px,5.7vw,82px);
    font-weight:600;
    line-height:.98;
    letter-spacing:-.035em;
    color:#181818;
}
.home-final .contact-v2 h3 em{
    font-style:normal;
    color:var(--mf-orange);
}

@media(max-width:1100px){
    .home-final .reasons-grid{
        grid-template-columns:none;
        grid-auto-flow:column;
        grid-auto-columns:minmax(245px,32%);
        overflow-x:auto;
        overflow-y:hidden;
        scroll-snap-type:x mandatory;
        scrollbar-width:thin;
        scrollbar-color:var(--mf-orange) #eeeae3;
    }
    .home-final .reason-card,
    .home-final .reason-card:nth-child(4),
    .home-final .reason-card:nth-child(5){
        min-height:278px;
        padding:27px 23px 25px;
    }
}

@media(max-width:640px){
    .home-final .reasons-final{padding-bottom:76px}
    .home-final .reasons-grid{
        grid-auto-columns:82%;
        border-radius:22px;
    }
    .home-final .reason-card,
    .home-final .reason-card:nth-child(4),
    .home-final .reason-card:nth-child(5){
        display:flex;
        min-height:260px;
        padding:24px 21px;
    }
    .home-final .reason-card > i{
        width:62px;
        height:62px;
        margin-bottom:32px;
        border-radius:17px;
        font-size:24px;
    }
    .home-final .reason-card > span{top:27px;right:20px}
    .home-final .reason-card h3{margin-bottom:12px;font-size:26px}
    .home-final .reason-card p{font-size:13px}
    .home-final .contact-v2 h2.contact-section-title{
        gap:12px;
        margin-bottom:42px;
        font-size:26px;
        line-height:1.08;
    }
    .home-final .contact-v2 h2.contact-section-title::before,
    .home-final .contact-v2 h2.contact-section-title::after{
        width:28px;
        flex-basis:28px;
    }
    .home-final .contact-v2 h3{font-size:49px}
}

/* ========================================================================== */
/* INDEX — AVANTAGES PAR ICÔNES, HISTOIRE ÉDITORIALE ET FOOTER BLANC         */
/* ========================================================================== */

/* Cinq raisons : une ligne technique ouverte, sans cartes ni numéros */
.home-final .reasons-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:0;
    width:min(100%,1180px);
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
}
.home-final .reason-card,
.home-final .reason-card:nth-child(4),
.home-final .reason-card:nth-child(5){
    position:relative;
    display:flex;
    grid-column:auto;
    min-height:255px;
    flex-direction:column;
    align-items:center;
    padding:0 22px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    text-align:center;
}
.home-final .reason-card::before{
    content:"";
    position:absolute;
    z-index:0;
    top:39px;
    right:0;
    bottom:auto;
    left:0;
    width:100%;
    height:1px;
    border-radius:0;
    background:#dedbd3;
    transform:none;
}
.home-final .reason-card:first-child::before{
    left:50%;
    width:50%;
}
.home-final .reason-card:last-child::before{
    width:50%;
}
.home-final .reason-card > i{
    position:relative;
    z-index:1;
    display:grid;
    width:78px;
    height:78px;
    flex:0 0 78px;
    margin:0 auto 31px;
    place-items:center;
    border:2px solid var(--mf-orange);
    border-radius:50%;
    background:#fff;
    box-shadow:0 0 0 9px #fff;
    font-size:27px;
    color:var(--mf-orange);
    transition:transform .3s ease,background-color .3s ease,color .3s ease,box-shadow .3s ease;
}
.home-final .reason-card h3{
    margin:0 0 13px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(24px,1.9vw,28px);
    font-weight:700;
    line-height:1.12;
    color:#181818;
}
.home-final .reason-card p{
    max-width:205px;
    margin:0 auto;
    font-family:'Manrope',sans-serif;
    font-size:13px;
    font-weight:500;
    line-height:1.68;
    color:#676767;
}
@media(hover:hover){
    .home-final .reason-card:hover{
        transform:none;
        border-color:transparent;
        background:transparent;
        box-shadow:none;
    }
    .home-final .reason-card:hover::before{transform:none}
    .home-final .reason-card:hover > i{
        transform:translateY(-7px);
        border-color:var(--mf-orange);
        background:var(--mf-orange);
        color:#fff;
        box-shadow:0 12px 28px rgba(245,130,32,.2),0 0 0 9px #fff;
    }
    .home-final .reason-card:hover h3{color:var(--mf-orange)}
    .home-final .reason-card:hover p{color:#676767}
}

/* Notre histoire : composition blanche, éditoriale, bouton centré en bas */
.home-final .about-v3-story{
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    gap:clamp(48px,7vw,100px);
    max-width:1180px;
    margin:92px auto 0;
    padding:66px 0 58px;
    overflow:visible;
    border:0;
    border-top:1px solid #dedbd3;
    border-bottom:1px solid #dedbd3;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
.home-final .about-v3-story::before{
    display:none;
}
.home-final .about-v3-story-label{
    display:flex;
    align-items:center;
    gap:15px;
    margin:0 0 26px;
    font-family:'Oswald',sans-serif;
    font-size:27px;
    font-weight:600;
    line-height:1;
    letter-spacing:.035em;
    text-transform:uppercase;
    color:#181818;
}
.home-final .about-v3-story-label::before{
    content:"";
    width:52px;
    height:2px;
    flex:0 0 52px;
    background:var(--mf-orange);
}
.home-final .about-v3-story h3{
    max-width:520px;
    margin:0;
    font-size:clamp(44px,4.2vw,61px);
    font-weight:600;
    line-height:1.04;
    letter-spacing:-.03em;
}
.home-final .about-v3-story-note{
    max-width:440px;
    margin:25px 0 0;
    font-size:15px;
    font-weight:500;
    line-height:1.8;
    color:#676767;
}
.home-final .about-v3-story-timeline{
    display:grid;
    align-content:start;
    gap:0;
    padding:0;
}
.home-final .about-v3-story-timeline::before,
.home-final .about-v3-story-timeline article::before{
    display:none;
}
.home-final .about-v3-story-timeline article{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    gap:26px;
    padding:0 0 30px;
}
.home-final .about-v3-story-timeline article + article{
    padding-top:30px;
    border-top:1px solid #dedbd3;
}
.home-final .about-v3-story-year{
    font-size:22px;
    font-weight:600;
}
.home-final .about-v3-story-timeline h4{
    margin:0 0 11px;
    font-family:'Oswald',sans-serif;
    font-size:24px;
    font-weight:600;
    line-height:1.2;
    color:#181818;
}
.home-final .about-v3-story-timeline p{
    font-size:13px;
    font-weight:500;
    line-height:1.78;
}
.home-final .about-v3-story-link{
    grid-column:1 / -1;
    justify-self:center;
    width:auto;
    min-width:330px;
    min-height:62px;
    margin:8px 0 0;
    padding:9px 10px 9px 25px;
    border:1px solid #181818;
    border-radius:999px;
    background:#181818;
    box-shadow:0 14px 30px rgba(24,24,24,.13);
    animation:none;
}
.home-final .about-v3-story-link small{color:rgba(255,255,255,.62)}
.home-final .about-v3-story-link strong{font-size:18px;color:#fff}
.home-final .about-v3-story-link i{background:#fff;color:#181818}
.home-final .about-v3-story-link:hover{
    transform:translateY(-4px);
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    box-shadow:0 18px 38px rgba(245,130,32,.22);
}
.home-final .about-v3-story-link:hover i{background:#181818;color:#fff}

/* Pied de page : blanc, typographie affirmée, détails orange et noir */
.home-final .site-footer{
    position:relative;
    padding:0;
    border-top:1px solid #e7e3da;
    background:#fff;
    color:#181818;
}
.home-final .site-footer::before{
    content:"";
    position:absolute;
    top:-1px;
    left:50%;
    width:170px;
    height:4px;
    border-radius:0 0 5px 5px;
    background:var(--mf-orange);
    transform:translateX(-50%);
}
.home-final .footer-main{
    display:grid;
    grid-template-columns:1.35fr .7fr .85fr 1fr;
    gap:clamp(38px,5vw,72px);
    padding-top:78px;
    padding-bottom:62px;
}
.home-final .footer-brand img{
    width:190px;
    margin:0 0 27px;
}
.home-final .footer-brand p,
.home-final .footer-contact p,
.home-final .footer-social p{
    font-family:'Manrope',sans-serif;
    font-size:13px;
    font-weight:500;
    line-height:1.8;
    color:#666;
}
.home-final .footer-brand p{
    max-width:320px;
    margin:0;
}
.home-final .site-footer h3{
    position:relative;
    margin:4px 0 28px;
    padding-bottom:15px;
    font-family:'Oswald',sans-serif;
    font-size:22px;
    font-weight:600;
    line-height:1.1;
    letter-spacing:.01em;
    text-transform:none;
    color:#181818;
}
.home-final .site-footer h3::after{
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    width:34px;
    height:2px;
    background:var(--mf-orange);
}
.home-final .footer-nav{
    gap:14px;
}
.home-final .footer-nav h3{
    margin-bottom:14px;
}
.home-final .footer-nav a{
    font-family:'Manrope',sans-serif;
    font-size:13px;
    font-weight:650;
    color:#4f4f4f;
}
.home-final .footer-nav a:hover{
    color:var(--mf-orange);
    transform:translateX(5px);
}
.home-final .footer-contact p{
    margin:0 0 15px;
}
.home-final .social-row{
    gap:10px;
    margin-bottom:21px;
}
.home-final .social-row a{
    width:48px;
    height:48px;
    border:1px solid #dcd8cf;
    border-radius:50%;
    background:#fff;
    color:#181818;
}
.home-final .social-row a:hover{
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    color:#fff;
    transform:translateY(-5px);
}
.home-final .footer-bottom{
    padding-top:25px;
    padding-bottom:27px;
    border-top:1px solid #e7e3da;
}
.home-final .footer-bottom p,
.home-final .footer-bottom a{
    font-family:'Manrope',sans-serif;
    font-size:10px;
    font-weight:700;
    letter-spacing:.09em;
    text-transform:uppercase;
    color:#777;
}
.home-final .footer-bottom a:hover{color:var(--mf-orange)}

@media(max-width:1100px){
    .home-final .reasons-grid{
        grid-template-columns:none;
        grid-auto-flow:column;
        grid-auto-columns:minmax(235px,32%);
        overflow-x:auto;
        overflow-y:hidden;
        scroll-snap-type:x mandatory;
        scrollbar-width:thin;
        scrollbar-color:var(--mf-orange) #eeeae3;
    }
    .home-final .reason-card,
    .home-final .reason-card:nth-child(4),
    .home-final .reason-card:nth-child(5){
        min-height:250px;
        padding:0 22px;
        scroll-snap-align:start;
    }
    .home-final .footer-main{grid-template-columns:1.15fr .75fr .9fr;gap:45px}
    .home-final .footer-social{grid-column:1 / -1;padding-top:8px}
}

@media(max-width:900px){
    .home-final .about-v3-story{
        grid-template-columns:1fr;
        gap:44px;
        margin-top:72px;
        padding:56px 0 50px;
    }
    .home-final .about-v3-story-link{margin-top:0}
    .home-final .footer-main{grid-template-columns:1fr 1fr}
    .home-final .footer-brand{grid-column:1 / -1}
    .home-final .footer-social{grid-column:auto}
}

@media(max-width:640px){
    .home-final .reasons-grid{grid-auto-columns:78%}
    .home-final .reason-card,
    .home-final .reason-card:nth-child(4),
    .home-final .reason-card:nth-child(5){
        min-height:242px;
        padding:0 20px;
    }
    .home-final .reason-card > i{width:72px;height:72px;flex-basis:72px;margin-bottom:28px;font-size:25px}
    .home-final .reason-card h3{font-size:26px}
    .home-final .reason-card p{font-size:13px}
    .home-final .about-v3-story{
        gap:38px;
        margin-top:60px;
        padding:48px 0 44px;
    }
    .home-final .about-v3-story-label{font-size:24px}
    .home-final .about-v3-story-label::before{width:38px;flex-basis:38px}
    .home-final .about-v3-story h3{font-size:42px}
    .home-final .about-v3-story-note{font-size:14px}
    .home-final .about-v3-story-timeline article{grid-template-columns:1fr;gap:9px;padding-bottom:25px}
    .home-final .about-v3-story-timeline article + article{padding-top:25px}
    .home-final .about-v3-story-link{width:100%;min-width:0}
    .home-final .footer-main{grid-template-columns:1fr;gap:38px;padding-top:66px;padding-bottom:48px}
    .home-final .footer-brand,
    .home-final .footer-social{grid-column:auto}
    .home-final .site-footer h3{margin-bottom:22px}
    .home-final .footer-bottom{align-items:flex-start;flex-direction:column;gap:18px}
}

/* Notre histoire — équilibre noir, orange et blanc */
.home-final .about-v3-story-label{
    color:var(--mf-orange);
}
.home-final .about-v3-story-label::before{
    background:#181818;
}
.home-final .about-v3-story h3 em{
    display:block;
    margin-top:7px;
    font-style:normal;
    color:var(--mf-orange);
}
.home-final .about-v3-story-link{
    border-color:var(--mf-orange);
    background:#fff;
    color:#181818;
    box-shadow:0 14px 30px rgba(24,24,24,.08);
}
.home-final .about-v3-story-link small{
    color:var(--mf-orange);
}
.home-final .about-v3-story-link strong{
    color:#181818;
}
.home-final .about-v3-story-link i{
    background:var(--mf-orange);
    color:#fff;
}
.home-final .about-v3-story-link:hover{
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    color:#fff;
}
.home-final .about-v3-story-link:hover small{color:rgba(255,255,255,.72)}
.home-final .about-v3-story-link:hover strong{color:#fff}
.home-final .about-v3-story-link:hover i{background:#181818;color:#fff}

/* Hero 2026 — photo plein cadre, lecture éditoriale, citerne mise en avant */
.home-final .hero-v2{
    position:relative;
    min-height:760px;
    height:100svh;
    max-height:980px;
    padding:0;
    overflow:hidden;
    isolation:isolate;
    background:#171717;
}
.home-final .hero-v2-media{
    position:absolute;
    z-index:-3;
    inset:0;
    width:100%;
    height:100%;
    overflow:hidden;
}
.home-final .hero-v2-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 48%;
    filter:saturate(.82) contrast(1.09) brightness(.88) sepia(.05);
    transform:scale(1.075) translateX(2.2%);
    transform-origin:center;
    animation:heroPhotoBreathNew 18s ease-in-out infinite alternate;
}
.home-final .hero-v2-media::after{
    content:"";
    display:block;
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg,rgba(12,12,12,.96) 0%,rgba(12,12,12,.86) 31%,rgba(12,12,12,.58) 48%,rgba(12,12,12,.12) 72%,rgba(12,12,12,.04) 100%),
        linear-gradient(0deg,rgba(0,0,0,.42) 0%,transparent 38%);
}
.home-final .hero-v2-shade{
    display:block;
    position:absolute;
    z-index:-2;
    inset:0;
    background:linear-gradient(115deg,rgba(245,130,32,.11) 0%,transparent 35%);
    pointer-events:none;
}
.home-final .hero-grid{display:none}
.home-final .hero-v2-inner{
    display:flex;
    width:min(100%,1440px);
    height:100%;
    margin:0 auto;
    padding:128px clamp(28px,6vw,92px) 94px;
    align-items:center;
    justify-content:flex-start;
}
.home-final .hero-v2-copy{
    position:relative;
    z-index:2;
    width:min(100%,720px);
    max-width:720px;
    margin:0;
    padding:4px 0 4px 30px;
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    box-shadow:none;
    text-align:left;
    animation:heroCopyEnterNew .9s cubic-bezier(.16,1,.3,1) both;
}
.home-final .hero-v2-copy::before{
    content:"";
    display:block;
    position:absolute;
    top:9px;
    bottom:9px;
    left:0;
    width:4px;
    border-radius:999px;
    background:var(--mf-orange);
    box-shadow:0 0 30px rgba(245,130,32,.32);
}
.home-final .hero-v2 h1{
    max-width:700px;
    margin:0;
    font-family:'Oswald',sans-serif;
    font-size:clamp(66px,6.6vw,102px);
    font-weight:600;
    line-height:.94;
    letter-spacing:-.032em;
    text-transform:none;
    color:#fff;
    text-wrap:balance;
    text-shadow:0 8px 34px rgba(0,0,0,.22);
}
.home-final .hero-v2 h1::before{display:none}
.home-final .hero-v2 h1 span{
    display:inline-block;
    margin-top:5px;
    color:var(--mf-orange);
}
.home-final .hero-lead{
    width:auto;
    max-width:610px;
    margin:27px 0 0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    box-shadow:none;
    font-family:'Manrope',sans-serif;
    font-size:clamp(15px,1.25vw,18px);
    font-weight:500;
    line-height:1.72;
    letter-spacing:.005em;
    color:rgba(255,255,255,.84);
    text-shadow:0 2px 14px rgba(0,0,0,.35);
}
.home-final .hero-quote-button{
    display:inline-flex;
    width:auto;
    min-height:54px;
    margin:38px 0 0;
    padding:0 24px;
    align-items:center;
    justify-content:center;
    gap:14px;
    border:1px solid rgba(255,255,255,.78);
    border-radius:999px;
    background:rgba(255,255,255,.07);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    color:#fff;
    box-shadow:none;
    font-family:'Manrope',sans-serif;
    font-size:11px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
    transition:transform .3s,background .3s,border-color .3s,box-shadow .3s;
}
.home-final .hero-quote-button i{
    font-size:12px;
    transition:transform .3s;
}
.home-final .hero-quote-button:hover{
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    color:#fff;
    box-shadow:0 16px 34px rgba(245,130,32,.26);
    transform:translateY(-3px);
}
.home-final .hero-quote-button:hover i{transform:translateX(4px)}
.home-final .hero-solution-arrow{
    position:absolute;
    z-index:4;
    bottom:28px;
    left:50%;
    width:58px;
    height:58px;
    border:1px solid rgba(255,255,255,.58);
    border-radius:50%;
    background:rgba(15,15,15,.24);
    color:#fff;
    box-shadow:0 12px 30px rgba(0,0,0,.2);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    transform:translateX(-50%);
    animation:heroArrowFloatNew 2.8s ease-in-out infinite;
}
.home-final .hero-solution-arrow::before{
    content:"";
    position:absolute;
    inset:6px;
    border:1px solid rgba(245,130,32,.72);
    border-radius:50%;
}
.home-final .hero-solution-arrow:hover{
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    color:#fff;
}


/* Cartes d'application : deux niveaux de lecture, uniquement en blanc */
.home-final .journal-v2{scroll-margin-top:80px}
.home-final .solutions-heading .solutions-kicker{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    width:min(100%,720px);
    max-width:none;
    margin:0 auto 29px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(29px,3vw,40px);
    font-weight:600;
    line-height:1;
    letter-spacing:.035em;
    text-transform:uppercase;
    color:#181818;
}
.home-final .solutions-heading .solutions-kicker::before,
.home-final .solutions-heading .solutions-kicker::after{
    content:"";
    width:clamp(38px,6vw,82px);
    height:2px;
    background:var(--mf-orange);
}
.home-final .solutions-heading .solutions-kicker span{white-space:nowrap}
.home-final .solutions-heading .solutions-kicker span::after{
    content:"";
    display:block;
    width:7px;
    height:7px;
    margin:12px auto 0;
    border-radius:50%;
    background:var(--mf-orange);
}
.home-final .solutions-heading h2{
    max-width:1000px;
    margin:0 auto;
    font-family:'Oswald',sans-serif;
    font-size:clamp(58px,6.2vw,84px);
    font-weight:600;
    line-height:1.02;
    letter-spacing:-.035em;
    text-transform:none;
    color:var(--mf-orange);
}
.home-final .solutions-heading .solutions-intro{
    max-width:760px;
    margin:28px auto 0;
    font-family:'Manrope',sans-serif;
    font-size:clamp(15px,1.35vw,18px);
    font-weight:500;
    line-height:1.75;
    color:#666;
}
.home-final .solutions-bento .solution-tile .tile-copy{
    padding:34px 36px;
}
.home-final .solutions-bento .solution-tile .tile-copy h3,
.home-final .solutions-bento .solution-custom .tile-copy h3{
    margin:0 0 8px;
    font-family:'Manrope',sans-serif;
    font-size:clamp(27px,2.4vw,36px);
    font-weight:800;
    line-height:1.08;
    letter-spacing:-.035em;
    text-transform:none;
    color:#fff;
}
.home-final .solutions-bento .solution-tile .tile-copy p,
.home-final .solutions-bento .solution-custom .tile-copy p{
    max-width:none;
    margin:0;
    font-family:'Manrope',sans-serif;
    font-size:clamp(14px,1.25vw,17px);
    font-weight:600;
    line-height:1.45;
    color:rgba(255,255,255,.9);
}
.home-final .solutions-bento .solution-custom>img{
    object-position:center 56%;
}
.home-final .solutions-bento .solution-tile .tile-discover,
.home-final .solutions-bento .solution-custom .tile-discover{
    display:inline-flex;
    width:max-content;
    min-height:42px;
    margin-top:20px;
    padding:0 18px;
    align-items:center;
    justify-content:center;
    gap:12px;
    border:1px solid var(--mf-orange);
    border-radius:999px;
    background:var(--mf-orange);
    box-shadow:0 10px 25px rgba(245,130,32,.25);
    font-family:'Manrope',sans-serif;
    font-size:10px;
    font-weight:800;
    line-height:1;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#fff;
    transition:transform .3s ease,background-color .3s ease,box-shadow .3s ease;
}
.home-final .solutions-bento .solution-tile:hover .tile-discover{
    transform:translateY(-2px);
    background:#e96f0c;
    box-shadow:0 14px 30px rgba(245,130,32,.38);
}
.home-final .solutions-bento .solution-tile .tile-discover i{
    font-size:10px;
    transition:transform .3s ease;
}
.home-final .solutions-bento .solution-tile:hover .tile-discover i{
    transform:translateX(4px);
}

@media(max-width:900px){
    .home-final .solutions-heading .solutions-kicker{font-size:clamp(26px,4vw,34px)}
    .home-final .solutions-heading h2{font-size:clamp(52px,9vw,70px)}
}

@media(max-width:560px){
    .home-final .solutions-heading .solutions-kicker{gap:12px;margin-bottom:24px;font-size:26px}
    .home-final .solutions-heading .solutions-kicker::before,
    .home-final .solutions-heading .solutions-kicker::after{width:28px}
    .home-final .solutions-heading h2{font-size:46px;line-height:1.06;letter-spacing:-.03em}
    .home-final .solutions-heading .solutions-intro{margin-top:22px;font-size:14px;line-height:1.7}
    .home-final .solutions-bento .solution-tile .tile-copy{padding:26px 24px}
    .home-final .solutions-bento .solution-tile .tile-copy h3,
    .home-final .solutions-bento .solution-custom .tile-copy h3{font-size:28px}
    .home-final .solutions-bento .solution-tile .tile-copy p,
    .home-final .solutions-bento .solution-custom .tile-copy p{font-size:14px}
    .home-final .solutions-bento .solution-tile .tile-discover{
        min-height:40px;
        margin-top:17px;
        padding:0 16px;
    }
}
.home-final .hero-solution-arrow:hover::before{border-color:rgba(255,255,255,.55)}

@keyframes heroCopyEnterNew{
    from{opacity:0;transform:translateX(-38px)}
    to{opacity:1;transform:translateX(0)}
}
@keyframes heroPhotoBreathNew{
    from{transform:scale(1.075) translateX(2.2%)}
    to{transform:scale(1.105) translateX(1.5%)}
}
@keyframes heroArrowFloatNew{
    0%,100%{transform:translate(-50%,0)}
    50%{transform:translate(-50%,7px)}
}

@media(max-width:900px){
    .home-final .hero-v2{
        min-height:740px;
        height:100svh;
        max-height:none;
    }
    .home-final .hero-v2-media img{
        object-position:57% center;
        filter:saturate(.8) contrast(1.08) brightness(.82) sepia(.04);
        transform:scale(1.04);
        animation:none;
    }
    .home-final .hero-v2-media::after{
        background:
            linear-gradient(0deg,rgba(10,10,10,.96) 0%,rgba(10,10,10,.8) 38%,rgba(10,10,10,.2) 72%,rgba(10,10,10,.05) 100%),
            linear-gradient(90deg,rgba(10,10,10,.36),transparent 75%);
    }
    .home-final .hero-v2-shade{
        background:linear-gradient(0deg,rgba(245,130,32,.09),transparent 48%);
    }
    .home-final .hero-v2-inner{
        padding:120px 6% 112px;
        align-items:flex-end;
        justify-content:flex-start;
    }
    .home-final .hero-v2-copy{
        width:min(100%,650px);
        max-width:650px;
        padding:0 0 0 22px;
        text-align:left;
    }
    .home-final .hero-v2-copy::before{top:4px;bottom:4px;width:3px}
    .home-final .hero-v2 h1{
        max-width:620px;
        font-size:clamp(54px,10vw,76px);
        line-height:.96;
    }
    .home-final .hero-lead{
        max-width:560px;
        margin-top:23px;
        font-size:14px;
        line-height:1.65;
    }
    .home-final .hero-quote-button{margin-top:30px}
    .home-final .hero-solution-arrow{bottom:24px;width:54px;height:54px}
}

@media(max-width:560px){
    .home-final .hero-v2{min-height:700px}
    .home-final .hero-v2-inner{padding:100px 22px 102px}
    .home-final .hero-v2-copy{width:100%;padding-left:17px}
    .home-final .hero-v2 h1{
        font-size:clamp(44px,13vw,58px);
        line-height:.98;
        letter-spacing:-.027em;
    }
    .home-final .hero-v2 h1 span{margin-top:3px}
    .home-final .hero-lead{margin-top:20px;font-size:13px;line-height:1.58}
    .home-final .hero-quote-button{
        min-height:48px;
        margin-top:27px;
        padding:0 19px;
        font-size:9px;
    }
    .home-final .hero-solution-arrow{bottom:20px;width:50px;height:50px}
}

@media(prefers-reduced-motion:reduce){
    .home-final .hero-v2-media img,
    .home-final .hero-v2-copy,
    .home-final .hero-solution-arrow{animation:none}
}

/* Flèche du hero — double orbite légère */
.home-final .hero-solution-arrow{
    width:64px;
    height:64px;
    border:0;
    background:#fff;
    color:#181818;
    box-shadow:0 16px 38px rgba(0,0,0,.24);
}
.home-final .hero-solution-arrow::before{
    inset:8px;
    border:1px solid var(--mf-orange);
}
.home-final .hero-solution-arrow::after{
    content:"";
    position:absolute;
    inset:-8px;
    border:1px dashed rgba(255,255,255,.68);
    border-radius:50%;
    animation:heroArrowOrbit 12s linear infinite;
}
.home-final .hero-solution-arrow:hover{
    background:var(--mf-orange);
    color:#fff;
    transform:translateX(-50%) scale(1.05);
}
@keyframes heroArrowOrbit{to{transform:rotate(360deg)}}

/* ========================================================================== */
/* INDEX — RÉALISATIONS EN STORY ET JOURNAL ÉDITORIAL                        */
/* ========================================================================== */

.home-final .projects-v2,
.home-final .journal-v2{
    position:relative;
    overflow:hidden;
    padding:112px 0 120px;
    border-top:1px solid #ece9e3;
    background:#fff;
}
.home-final .projects-heading,
.home-final .journal-heading{
    width:min(100%,1040px);
    margin:0 auto 62px;
    text-align:center;
}
.home-final .projects-heading .eyebrow,
.home-final .journal-heading .eyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    width:min(100%,920px);
    margin:0 auto 29px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(29px,3vw,40px);
    font-weight:600;
    line-height:1;
    letter-spacing:.035em;
    text-transform:uppercase;
    color:#181818;
}
.home-final .projects-heading .eyebrow > span,
.home-final .journal-heading .eyebrow > span,
.home-final .projects-heading .eyebrow::after,
.home-final .journal-heading .eyebrow::after{
    content:"";
    display:block;
    width:clamp(38px,6vw,82px);
    height:2px;
    flex:0 1 82px;
    background:var(--mf-orange);
}
.home-final .projects-heading h2,
.home-final .journal-heading h2{
    margin:0;
    font-family:'Oswald',sans-serif;
    font-size:clamp(58px,6.2vw,84px);
    font-weight:600;
    line-height:1.02;
    letter-spacing:-.035em;
    text-transform:none;
    color:#181818;
}
.home-final .projects-heading h2 em,
.home-final .journal-heading h2 em{
    font-style:normal;
    color:var(--mf-orange);
}
.home-final .projects-intro,
.home-final .journal-intro{
    width:min(100%,760px);
    margin:28px auto 0;
    font-family:'Manrope',sans-serif;
    font-size:clamp(15px,1.35vw,18px);
    font-weight:500;
    line-height:1.75;
    color:#666;
}

/* Réalisations : un seul écran, plusieurs histoires */
.home-final .project-story{
    --story-duration:6000ms;
    position:relative;
    width:min(100%,1180px);
    height:clamp(500px,55vw,660px);
    margin:0 auto;
    overflow:hidden;
    border-radius:30px;
    background:#181818;
    box-shadow:0 30px 70px rgba(24,24,24,.14);
    isolation:isolate;
}
.home-final .project-story-progress{
    position:absolute;
    z-index:8;
    top:22px;
    right:24px;
    left:24px;
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:8px;
}
.home-final .project-story-progress button{
    position:relative;
    width:100%;
    height:4px;
    padding:0;
    overflow:hidden;
    border:0;
    border-radius:999px;
    background:rgba(255,255,255,.35);
    cursor:pointer;
}
.home-final .project-story-progress button span{
    display:block;
    width:0;
    height:100%;
    border-radius:inherit;
    background:var(--mf-orange);
}
.home-final .project-story-progress button.is-active span{
    animation:projectStoryProgress var(--story-duration) linear forwards;
}
.home-final .project-story.is-paused .project-story-progress button.is-active span{
    animation-play-state:paused;
}
.home-final .project-story-slides,
.home-final .project-story-slide{
    position:absolute;
    inset:0;
}
.home-final .project-story-slide{
    z-index:1;
    opacity:0;
    visibility:hidden;
    transition:opacity .75s ease,visibility .75s ease;
}
.home-final .project-story-slide.is-active{
    z-index:2;
    opacity:1;
    visibility:visible;
}
.home-final .project-story-slide::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(0deg,rgba(9,9,9,.9) 0%,rgba(9,9,9,.5) 35%,transparent 68%),
        linear-gradient(90deg,rgba(9,9,9,.25),transparent 54%);
}
.home-final .project-story-slide img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    filter:saturate(.86) contrast(1.04);
    transform:scale(1.01);
}
.home-final .project-story-slide:nth-child(3) img{object-position:center 44%}
.home-final .project-story-slide:nth-child(-n+4) img{
    object-fit:contain !important;
    position:relative;
    z-index:1;
    background:transparent;
    transform:none;
}
.home-final .project-story-slide:nth-child(-n+4)::before{
    content:"";
    position:absolute;
    z-index:0;
    inset:-26px;
    background:var(--story-image) center/cover no-repeat;
    filter:blur(24px) saturate(.82) brightness(.78);
    transform:scale(1.08);
}
.home-final .project-story-slide:nth-child(-n+4).is-active img{
    animation:none;
    transform:none;
}
.home-final .project-story-slide:nth-child(-n+4)::after{
    z-index:2;
    background:linear-gradient(90deg,rgba(20,20,20,.18),transparent 58%);
}
.home-final .project-story-slide:nth-child(-n+4) .project-story-copy{
    right:auto;
    bottom:30px;
    width:min(42%,440px);
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
}
.home-final .project-story-slide:nth-child(-n+4) .project-story-copy h3{
    color:#fff;
    font-size:clamp(26px,3.15vw,44px);
    line-height:1.06;
    text-shadow:0 3px 18px rgba(0,0,0,.62);
}
.home-final .project-story-slide:nth-child(-n+4) .project-story-copy span{
    text-shadow:0 2px 10px rgba(0,0,0,.62);
}
/* Le premier titre est volontairement plus compact : sa formulation est plus longue. */
.home-final .project-story-slide:nth-child(1) .project-story-copy h3{
    font-size:clamp(24px,2.55vw,36px);
    line-height:1.08;
}
.home-final .project-story-slide.is-active img{
    animation:projectStoryImage var(--story-duration) ease-out forwards;
}
.home-final .project-story-copy{
    position:absolute;
    z-index:3;
    right:160px;
    bottom:46px;
    left:48px;
}
.home-final .project-story-copy span{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:15px;
    font-family:'Manrope',sans-serif;
    font-size:10px;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--mf-orange);
}
.home-final .project-story-copy span::before{
    content:"";
    width:32px;
    height:2px;
    background:currentColor;
}
.home-final .project-story-copy h3{
    margin:0;
    font-family:'Oswald',sans-serif;
    font-size:clamp(38px,4.5vw,62px);
    font-weight:600;
    line-height:1.02;
    letter-spacing:-.025em;
    text-transform:none;
    color:#fff;
}
.home-final .project-story-counter{
    position:absolute;
    z-index:7;
    top:46px;
    right:27px;
    display:flex;
    align-items:baseline;
    gap:5px;
    color:#fff;
}
.home-final .project-story-counter strong{
    font-family:'Oswald',sans-serif;
    font-size:28px;
    font-weight:600;
}
.home-final .project-story-counter span{
    font:700 10px 'Manrope',sans-serif;
    color:rgba(255,255,255,.62);
}
.home-final .project-story-controls{
    position:absolute;
    z-index:7;
    right:32px;
    bottom:36px;
    display:flex;
    gap:10px;
}
.home-final .project-story-controls button{
    display:grid;
    width:52px;
    height:52px;
    padding:0;
    place-items:center;
    border:1px solid rgba(255,255,255,.55);
    border-radius:50%;
    background:rgba(15,15,15,.22);
    color:#fff;
    cursor:pointer;
    transition:background .3s,border-color .3s,transform .3s;
}
.home-final .project-story-controls button:hover{
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    transform:translateY(-3px);
}
.home-final .project-story-progress button:focus-visible,
.home-final .project-story-controls button:focus-visible{
    outline:3px solid rgba(245,130,32,.5);
    outline-offset:4px;
}
@keyframes projectStoryProgress{to{width:100%}}
@keyframes projectStoryImage{to{transform:scale(1.065)}}

/* Journal : trois articles de même importance */
.home-final .journal-v2{border-bottom:1px solid #ece9e3}
.home-final .journal-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
    width:min(100%,1180px);
    margin:0 auto;
}
.home-final .journal-article{
    display:flex;
    min-width:0;
    overflow:hidden;
    flex-direction:column;
    border:1px solid #e3dfd6;
    border-radius:24px;
    background:#fff;
    color:#181818;
    transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .4s;
}
.home-final .journal-article:hover{
    border-color:rgba(245,130,32,.7);
    box-shadow:0 24px 56px rgba(24,24,24,.1);
    transform:translateY(-8px);
}
.home-final .journal-article-image{
    position:relative;
    aspect-ratio:4/3;
    overflow:hidden;
    background:#e9e6df;
}
.home-final .journal-article-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgba(0,0,0,.22),transparent 45%);
    pointer-events:none;
}
.home-final .journal-article-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    filter:saturate(.85) contrast(1.03);
    transition:transform .8s cubic-bezier(.16,1,.3,1),filter .5s;
}
.home-final .journal-article:nth-child(2) .journal-article-image img{object-position:center 48%}
.home-final .journal-article:hover .journal-article-image img{
    filter:saturate(1) contrast(1.03);
    transform:scale(1.055);
}
.home-final .journal-article-image > span{
    position:absolute;
    z-index:2;
    top:18px;
    left:18px;
    padding:9px 12px;
    border-radius:999px;
    background:var(--mf-orange);
    font-family:'Manrope',sans-serif;
    font-size:8px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
    color:#fff;
}
.home-final .journal-article-copy{
    display:flex;
    min-height:330px;
    padding:28px 28px 30px;
    flex:1;
    flex-direction:column;
}
.home-final .journal-article-copy > div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}
.home-final .journal-article-copy small{
    font-family:'Manrope',sans-serif;
    font-size:8px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
    color:#777;
}
.home-final .journal-article-copy > div > span{
    font-family:'Oswald',sans-serif;
    font-size:24px;
    font-weight:600;
    color:var(--mf-orange);
}
.home-final .journal-article-copy h3{
    margin:0 0 16px;
    font-family:'Oswald',sans-serif;
    font-size:clamp(26px,2.35vw,34px);
    font-weight:600;
    line-height:1.12;
    letter-spacing:-.018em;
    text-transform:none;
    color:#181818;
}
.home-final .journal-article-copy p{
    margin:0 0 24px;
    font-family:'Manrope',sans-serif;
    font-size:13px;
    line-height:1.7;
    color:#6b6b6b;
}
.home-final .journal-article-copy b{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-top:auto;
    font-family:'Manrope',sans-serif;
    font-size:9px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
    color:#181818;
}
.home-final .journal-article-copy b i{color:var(--mf-orange);transition:transform .3s}
.home-final .journal-article:hover .journal-article-copy b i{transform:translateX(5px)}
.home-final .journal-all{
    display:flex;
    justify-content:center;
    margin-top:44px;
}
.home-final .journal-all-button{
    display:inline-flex;
    min-height:54px;
    padding:0 25px;
    align-items:center;
    justify-content:center;
    gap:14px;
    border:1px solid #181818;
    border-radius:999px;
    background:#fff;
    font-family:'Manrope',sans-serif;
    font-size:10px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#181818;
    transition:background .3s,border-color .3s,color .3s,transform .3s;
}
.home-final .journal-all-button:hover{
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    color:#fff;
    transform:translateY(-3px);
}
.home-final .journal-all-button i{transition:transform .3s}
.home-final .journal-all-button:hover i{transform:translateX(5px)}

@media(max-width:900px){
    .home-final .projects-v2,
    .home-final .journal-v2{padding:94px 0 102px}
    .home-final .projects-heading,
    .home-final .journal-heading{margin-bottom:48px}
    .home-final .project-story{height:560px;border-radius:24px}
    .home-final .project-story-copy{right:32px;bottom:105px;left:32px}
    .home-final .project-story-controls{right:auto;bottom:32px;left:32px}
    .home-final .journal-grid{
        grid-template-columns:none;
        grid-auto-flow:column;
        grid-auto-columns:minmax(320px,72vw);
        gap:18px;
        padding:5px 1px 24px;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        scrollbar-width:thin;
        scrollbar-color:var(--mf-orange) #eeeae3;
    }
    .home-final .journal-article{scroll-snap-align:center}
}

@media(max-width:560px){
    .home-final .projects-v2,
    .home-final .journal-v2{padding:82px 0 90px}
    .home-final .projects-heading .eyebrow,
    .home-final .journal-heading .eyebrow{gap:12px;font-size:25px}
    .home-final .projects-heading h2,
    .home-final .journal-heading h2{font-size:46px}
    .home-final .projects-intro,
    .home-final .journal-intro{margin-top:22px;font-size:14px;line-height:1.65}
    .home-final .project-story{height:500px;border-radius:20px}
    .home-final .project-story-progress{top:16px;right:16px;left:16px;gap:5px}
    .home-final .project-story-counter{top:34px;right:18px}
    .home-final .project-story-counter strong{font-size:22px}
    .home-final .project-story-copy{right:22px;bottom:94px;left:22px}
    .home-final .project-story-copy h3{font-size:38px}
    .home-final .project-story-copy span{font-size:8px}
    .home-final .project-story-controls{bottom:23px;left:22px}
    .home-final .project-story-controls button{width:46px;height:46px}
    .home-final .journal-grid{grid-auto-columns:86vw}
    .home-final .journal-article-copy{min-height:305px;padding:24px}
    .home-final .journal-article-copy h3{font-size:28px}
    .home-final .journal-all{margin-top:34px}
    .home-final .hero-solution-arrow{width:54px;height:54px}
}

@media(prefers-reduced-motion:reduce){
    .home-final .hero-solution-arrow::after,
    .home-final .project-story-progress button.is-active span,
    .home-final .project-story-slide.is-active img{animation:none}
    .home-final .project-story-progress button.is-active span{width:100%}
}

/* Dernière passe index — story panoramique et continuité blanche */
.home-final .project-story{
    height:clamp(420px,43vw,530px);
}

.home-final .quote-section,
.home-final .quote-form,
.home-final .quote-form .form-field{
    background:#fff;
}
.home-final .quote-form{
    border-color:#dedad1;
    box-shadow:0 24px 60px rgba(24,24,24,.065);
}
.home-final .quote-form::before{
    width:100%;
    height:4px;
    border-radius:0;
    background:linear-gradient(90deg,var(--mf-orange) 0 22%,#181818 22% 28%,transparent 28%);
}

.home-final .contact-v2{
    background:#fff;
}
.home-final .contact-backdrop{display:none}
.home-final .contact-v2-inner{
    padding:56px 42px;
    overflow:visible;
    border:0;
    border-top:1px solid #dedad1;
    border-bottom:1px solid #dedad1;
    border-radius:0;
    background:#fff;
    box-shadow:none;
}
.home-final .contact-v2-inner::before{
    top:44px;
    bottom:44px;
    left:55%;
    width:1px;
    height:auto;
    border-radius:0;
    background:#dedad1;
}
.home-final .contact-actions > a{
    border-color:#dedad1;
    background:#fff;
}

@media(max-width:900px){
    .home-final .project-story{height:470px}
    .home-final .contact-v2-inner{
        padding:46px 20px;
        border-radius:0;
    }
    .home-final .contact-v2-inner::before{display:none}
}

@media(max-width:560px){
    .home-final .project-story{height:430px}
    .home-final .contact-v2-inner{padding:38px 0}
}

/* Cohérence des actions : Histoire = Journal */
.home-final .about-v3-story-link{
    display:inline-flex;
    width:auto;
    min-width:0;
    min-height:54px;
    margin-top:4px;
    padding:0 25px;
    align-items:center;
    justify-content:center;
    gap:14px;
    border:1px solid #181818;
    border-radius:999px;
    background:#fff;
    box-shadow:none;
    color:#181818;
}
.home-final .about-v3-story-link span{display:block}
.home-final .about-v3-story-link small{display:none}
.home-final .about-v3-story-link strong{
    font-family:'Manrope',sans-serif;
    font-size:10px;
    font-weight:800;
    line-height:1;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:inherit;
}
.home-final .about-v3-story-link i{
    display:inline-block;
    width:auto;
    height:auto;
    border-radius:0;
    background:transparent;
    font-size:11px;
    color:inherit;
    transition:transform .3s;
}
.home-final .about-v3-story-link:hover{
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    color:#fff;
    transform:translateY(-3px);
}
.home-final .about-v3-story-link:hover strong,
.home-final .about-v3-story-link:hover i{color:#fff}
.home-final .about-v3-story-link:hover i{
    background:transparent;
    transform:translateX(5px);
}

/* Cercle du hero : verre sombre, sans surface blanche */
.home-final .hero-solution-arrow{
    border:1px solid rgba(255,255,255,.5);
    background:rgba(18,18,18,.2);
    -webkit-backdrop-filter:blur(14px) saturate(1.25);
    backdrop-filter:blur(14px) saturate(1.25);
    color:#fff;
    box-shadow:0 16px 38px rgba(0,0,0,.22);
}
.home-final .hero-solution-arrow:hover{
    border-color:var(--mf-orange);
    background:var(--mf-orange);
    color:#fff;
}
