@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/chakra-petch-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/chakra-petch-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/chakra-petch-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/chakra-petch-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/chakra-petch-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/chakra-petch-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
/* =====================================================================
   DEMINETEC — identité « Terrain » 2026
   Palette issue du logo : olive #8B9000 / #6E6A12 / #4D6600 / #393D00,
   terracotta #CC6633 / #DA4F37 / #993300, encre #1D1D1B.
   ===================================================================== */
:root{
  --t-night:#12140e; --t-night2:#1a1d13; --t-night3:#23271a;
  --t-khaki:#393d00; --t-moss:#4d6600; --t-olive:#8b9000; --t-olive-d:#6e6a12; --t-olive-l:#b4ba2a;
  --t-terra:#cc6633; --t-terra-l:#da4f37; --t-terra-d:#993300; --t-brown:#996633;
  --t-ink:#1d1d1b; --t-text:#34362c; --t-muted:#62655a;
  --t-bone:#f1f1ea; --t-paper:#f8f8f3; --t-line:rgba(57,61,0,.14); --t-line-d:rgba(212,216,170,.14);
  --t-display:'Chakra Petch', var(--dm-font);
  --t-ease:cubic-bezier(.23,1,.32,1); --t-ease-io:cubic-bezier(.77,0,.175,1); --t-drawer:cubic-bezier(.32,.72,0,1);
  --t-r-lg:22px; --t-r-md:14px; --t-r-sm:8px;
  --t-shadow:0 1px 0 rgba(255,255,255,.6) inset, 0 18px 40px -22px rgba(57,61,0,.45);
  --t-topo:url('../images/dm-topo.svg');
  /* retint des composants existants */
  --dm-graphite:#12140e; --dm-steel:#1a1d13; --dm-ink:#1d1d1b; --dm-text:#34362c; --dm-muted:#62655a;
  --dm-line:rgba(57,61,0,.14); --dm-line-dark:rgba(212,216,170,.14); --dm-paper:#f1f1ea;
  --dm-accent:#993300; --dm-accent-on-dark:#e0894f; --dm-radius:12px;
  --dm-grid:linear-gradient(rgba(180,186,42,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(180,186,42,.06) 1px,transparent 1px);
  --dm-grid-light:linear-gradient(rgba(57,61,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(57,61,0,.05) 1px,transparent 1px);
}
html{ scroll-behavior:smooth; }
body.dm-terrain{ background:var(--t-paper) !important; color:var(--t-text); }
body.dm-terrain ::selection{ background:var(--t-terra); color:#fff; }
/* grain fixe, non interactif */
body.dm-terrain::after{ content:''; position:fixed; inset:0; pointer-events:none; z-index:1; opacity:.045; mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

/* ---------- Typographie ---------- */
body.dm-terrain.stretched :is(h1,h2,h3,h4,h5,.heading-block h1,.heading-block h2,.heading-block h3,.menu-link,.menu-link div,.button,.button span,.before-heading,.dm-steps a,.counter,.dm-kpis strong):not([class^="icon-"]):not([class*=" icon-"]){
  font-family:var(--t-display) !important; }
body.dm-terrain :is(h1,h2,h3){ text-wrap:balance; letter-spacing:-.012em !important; text-transform:none !important; }
body.dm-terrain #content :is(h1,h2){ color:var(--t-ink) !important; font-weight:700 !important; line-height:1.06 !important; }
body.dm-terrain #content h2{ font-size:clamp(1.75rem,1.1rem + 2vw,2.85rem) !important; margin-top:clamp(56px,7vw,96px) !important; margin-bottom:22px !important; position:relative; padding-top:26px; }
body.dm-terrain #content h2::before{ content:''; position:absolute; left:0; top:0; width:44px; height:3px; background:var(--t-terra); border-radius:2px; }
body.dm-terrain #content .center h2::before, body.dm-terrain #content h2.center::before, body.dm-terrain #content .text-center h2::before{ left:50%; margin-left:-22px; }
body.dm-terrain #content h3{ color:var(--t-ink) !important; font-weight:600 !important; font-size:clamp(1.15rem,1rem + .5vw,1.45rem) !important; line-height:1.22 !important; }
body.dm-terrain #content p, body.dm-terrain #content li{ color:var(--t-text); text-wrap:pretty; }
body.dm-terrain #content p[style*="justify"], body.dm-terrain #content .fbox-content[style*="justify"]{ text-align:start !important; }
body.dm-terrain #content strong, body.dm-terrain #content b{ color:var(--t-ink); font-weight:600; }
/* surlignage dynamique (tendance Canva « highlighting ») */
body.dm-terrain #content :is(h1,h2) :is(strong,span){ color:inherit !important; background:linear-gradient(transparent 62%, rgba(204,102,51,.32) 62%, rgba(204,102,51,.32) 92%, transparent 92%) no-repeat 0 0 / 0% 100%; transition:background-size 1.1s var(--t-ease) .15s; }
body.dm-terrain #content :is(h1,h2).t-in :is(strong,span), .no-io body.dm-terrain #content :is(h1,h2) :is(strong,span){ background-size:100% 100%; }
/* liens de contenu */
body.dm-terrain #content a:not(.button):not(.social-icon):not(.menu-link):not(.dm-toc a):not(.dm-steps a){ color:var(--t-terra-d) !important; text-decoration-color:rgba(204,102,51,.45) !important; text-decoration-thickness:1.5px !important; }
@media (hover:hover) and (pointer:fine){ body.dm-terrain #content a:not(.button):not(.social-icon):not(.menu-link):hover{ text-decoration-color:var(--t-terra) !important; } }
body.dm-terrain .w40hp h2{ color:var(--t-ink) !important; }
body.dm-terrain .w40hp h3[style]{ color:var(--t-ink) !important; }
body.dm-terrain .w40hp a{ color:var(--t-terra-d) !important; }
body.dm-terrain [style*="background:#ffffff;color:#555"]{ background:transparent !important; }

/* ---------- Boutons : pilule + pastille flèche ---------- */
body.dm-terrain .button{ border-radius:999px !important; font-weight:600 !important; letter-spacing:.06em !important; text-transform:uppercase; font-size:.8rem !important;
  padding:0 22px !important; height:auto !important; line-height:46px !important; border:1px solid transparent !important;
  background:var(--t-terra) !important; color:var(--t-ink) !important; text-shadow:none !important; box-shadow:0 10px 24px -14px rgba(153,51,0,.8) !important;
  transition:transform .16s var(--t-ease), background-color .2s ease, box-shadow .2s ease !important; display:inline-flex !important; align-items:center; gap:12px; }
body.dm-terrain .button::after{ content:''; width:26px; height:26px; border-radius:50%; flex:none; margin-right:-12px;
  background:rgba(29,29,27,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%231d1d1b' stroke-width='1.6'%3E%3Cpath d='M5 11 11 5M6 5h5v5'/%3E%3C/svg%3E") center/12px no-repeat;
  transition:transform .25s var(--t-ease); }
@media (hover:hover) and (pointer:fine){
  body.dm-terrain .button:hover{ background:#d97a45 !important; box-shadow:0 14px 30px -14px rgba(153,51,0,.9) !important; }
  body.dm-terrain .button:hover::after{ transform:translate(2px,-2px) scale(1.06); }
}
body.dm-terrain .button:active{ transform:scale(.97); }
body.dm-terrain .button:is(.button-border,.button-light,.dm-btn-secondary,.button-dark){ background:transparent !important; color:inherit !important; border-color:currentColor !important; box-shadow:none !important; }
body.dm-terrain #content .button:is(.button-border,.button-dark,.dm-btn-secondary){ color:var(--t-ink) !important; border-color:rgba(29,29,27,.35) !important; }
body.dm-terrain .button:is(.button-border,.button-light,.dm-btn-secondary,.button-dark)::after{ background-color:rgba(127,127,100,.16); filter:none; }
body.dm-terrain .dark .button:is(.button-border,.button-light)::after, body.dm-terrain .dm-svc .button::after{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='1.6'%3E%3Cpath d='M5 11 11 5M6 5h5v5'/%3E%3C/svg%3E"); background-color:rgba(255,255,255,.14); }
body.dm-terrain .dm-tel{ font-family:var(--dm-mono) !important; letter-spacing:.04em; }

/* ---------- En-tête : barre « îlot » vitrée ---------- */
body.dm-terrain #header, body.dm-terrain #header.transparent-header{ background:transparent !important; border:0 !important; }
body.dm-terrain #header-wrap{ background:rgba(18,20,14,.8) !important; -webkit-backdrop-filter:blur(16px) saturate(140%); backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid rgba(180,186,42,.18) !important; box-shadow:0 1px 0 rgba(255,255,255,.04) inset, 0 18px 40px -28px rgba(0,0,0,.8); transition:background-color .3s ease, transform .4s var(--t-ease); }
@media (min-width:992px){
  body.dm-terrain #header-wrap{ margin:12px 18px 0 !important; border-radius:18px; border:1px solid rgba(180,186,42,.18) !important; }
  body.dm-terrain #header.sticky-header #header-wrap{ left:0 !important; right:0 !important; width:auto !important; margin:8px 18px 0 !important; }
  body.dm-terrain #header .header-row{ min-height:72px; }
  body.dm-terrain #header.sticky-header .header-row{ min-height:62px; }
}
body.dm-terrain #header .menu-link{ color:rgba(241,241,234,.86) !important; font-weight:500 !important; letter-spacing:.07em !important; font-size:.76rem !important; text-transform:uppercase !important; position:relative; }
body.dm-terrain #header .menu-item > .menu-link::after{ content:''; position:absolute; left:50%; bottom:calc(50% - 16px); width:5px; height:5px; margin-left:-2.5px; border-radius:50%; background:var(--t-terra); transform:scale(0); transition:transform .25s var(--t-ease); }
body.dm-terrain #header .menu-item.current > .menu-link, body.dm-terrain #header .menu-item:hover > .menu-link{ color:#fff !important; }
body.dm-terrain #header .menu-item.current > .menu-link::after{ transform:scale(1); }
body.dm-terrain #header .sub-menu-container, body.dm-terrain #header .mega-menu-content{ background:rgba(22,25,16,.97) !important; border:1px solid rgba(180,186,42,.18) !important; border-radius:var(--t-r-md) !important; box-shadow:0 30px 60px -30px rgba(0,0,0,.85) !important; padding:8px !important; }
body.dm-terrain #header .sub-menu-container .menu-link{ color:rgba(241,241,234,.78) !important; letter-spacing:.03em !important; text-transform:none !important; font-size:.86rem !important; border-radius:8px; border:0 !important; }
body.dm-terrain #header .sub-menu-container .menu-item:hover > .menu-link{ background:rgba(139,144,0,.16) !important; color:#fff !important; }
body.dm-terrain .dm-lang summary, body.dm-terrain .dm-lang .lang-active{ color:#f1f1ea !important; font-family:var(--dm-mono) !important; }
body.dm-terrain #primary-menu-trigger svg line, body.dm-terrain .primary-menu-trigger svg line{ stroke:#f1f1ea !important; }
@media (max-width:991.98px){
  body.dm-terrain #header .primary-menu .menu-container{ background:var(--t-night) !important; }
  body.dm-terrain #header .sub-menu-container{ background:transparent !important; border:0 !important; box-shadow:none !important; }
}
/* barre de progression */
body.dm-terrain .dm-progress{ background:linear-gradient(90deg,var(--t-olive),var(--t-terra)) !important; height:2px !important; }

/* ---------- Héros (pages à grand visuel) ---------- */
body.dm-terrain #slider{ background-color:var(--t-night) !important; }
body.dm-terrain #slider.slider-element:not(.swiper_wrapper){ min-height:clamp(480px,74vh,780px) !important; background-size:cover !important; }
body.dm-terrain #slider.slider-element:not(.swiper_wrapper)::before{ content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(90deg,rgba(18,20,14,.94) 0%,rgba(18,20,14,.72) 38%,rgba(18,20,14,.18) 78%), linear-gradient(0deg,rgba(18,20,14,.9),transparent 38%); }
body.dm-terrain #slider.slider-element:not(.swiper_wrapper)::after, body.dm-terrain .swiper-slide-bg::before{ content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:var(--t-topo) 0 0/600px repeat; opacity:.35; mix-blend-mode:screen;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 70%); mask-image:linear-gradient(90deg,#000 0%,transparent 70%); }
body.dm-terrain #slider .slider-inner{ z-index:2; }
body.dm-terrain #slider .heading-block{ text-align:start !important; max-width:880px; padding-top:40px; }
body.dm-terrain #slider .heading-block::after{ display:none !important; }
body.dm-terrain #slider .heading-block h1{ color:#f8f8f3 !important; font-size:clamp(2.5rem,1.2rem + 4.6vw,5.4rem) !important; line-height:.98 !important; font-weight:700 !important; letter-spacing:-.025em !important; }
body.dm-terrain #slider .heading-block h1 strong{ font-weight:700; color:var(--t-olive-l); }
body.dm-terrain #slider .heading-block h4, body.dm-terrain #slider .heading-block > span{ order:-1; font-family:var(--dm-mono) !important; font-size:.74rem !important; letter-spacing:.22em !important; text-transform:uppercase !important; color:var(--t-olive-l) !important; margin:22px 0 0 !important; font-weight:500 !important; display:flex; align-items:center; gap:12px; }
body.dm-terrain #slider .heading-block h4::before{ content:''; width:34px; height:1px; background:var(--t-terra); }
body.dm-terrain #slider .heading-block h4 b{ font-weight:500; }
body.dm-terrain #slider .one-page-arrow{ left:auto !important; right:48px; bottom:42px; width:46px; height:46px; border:1px solid rgba(241,241,234,.3); border-radius:50%; display:grid; place-items:center; }
body.dm-terrain #slider .one-page-arrow i{ font-size:1.2rem !important; color:#f1f1ea !important; }
body.dm-terrain #slider .social-icon{ border-radius:50% !important; background:rgba(241,241,234,.08) !important; }
/* Accueil : carrousel */
body.dm-terrain .swiper-slide{ background-color:var(--t-night) !important; isolation:isolate; }
body.dm-terrain .swiper-slide-bg{ z-index:0 !important; }
body.dm-terrain .swiper-slide .dm-mag{ z-index:1; }
body.dm-terrain .swiper-slide-bg::after{ content:''; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg,rgba(18,20,14,.92) 0%,rgba(18,20,14,.6) 42%,rgba(18,20,14,.08) 80%), linear-gradient(0deg,rgba(18,20,14,.85),transparent 40%); }
body.dm-terrain .slider-caption{ z-index:3; }
body.dm-terrain .slider-caption.slider-caption-center{ text-align:start !important; left:0 !important; right:0 !important; margin:0 auto !important; max-width:1240px !important; width:100% !important; padding:0 24px !important; }
body.dm-terrain .slider-caption h2{ font-family:var(--t-display) !important; font-size:clamp(2.6rem,1.1rem + 5.4vw,6rem) !important; line-height:.95 !important; letter-spacing:-.03em !important; font-weight:700 !important; text-transform:none !important; max-width:13ch; color:#f8f8f3 !important; text-shadow:none !important; }
body.dm-terrain .slider-caption p{ max-width:56ch; font-size:clamp(1rem,.9rem + .3vw,1.2rem) !important; line-height:1.6 !important; color:rgba(241,241,234,.82) !important; text-shadow:none !important; margin-top:22px !important; }
body.dm-terrain .slider-caption::before{ content:'Dépollution pyrotechnique · UXO'; display:block; margin-bottom:22px; font:500 .72rem/1 var(--dm-mono); letter-spacing:.24em; text-transform:uppercase; color:var(--t-olive-l); padding-left:46px; background:linear-gradient(var(--t-terra),var(--t-terra)) 0 50%/34px 1px no-repeat; }
html:not([lang="fr"]) body.dm-terrain .slider-caption::before{ content:'UXO · EOD'; }
body.dm-terrain .slider-arrow-left, body.dm-terrain .slider-arrow-right{ background:rgba(241,241,234,.08) !important; border:1px solid rgba(241,241,234,.18); border-radius:50% !important; width:48px !important; height:48px !important; }
body.dm-terrain .swiper-pagination span{ background:rgba(241,241,234,.4) !important; border-radius:2px !important; width:18px !important; height:3px !important; }
body.dm-terrain .swiper-pagination span.swiper-pagination-bullet-active{ background:var(--t-terra) !important; width:34px !important; }
/* HUD du héros d'accueil */
.dm-hud{ position:absolute; inset:0; z-index:2; pointer-events:none; }
.dm-hud__ret{ position:absolute; right:clamp(-120px,-4vw,0px); top:50%; width:clamp(320px,38vw,560px); aspect-ratio:1; transform:translateY(-46%); opacity:.85; }
.dm-hud__ret img{ width:100%; height:100%; animation:t-spin 90s linear infinite; }
.dm-hud__ret::after{ content:''; position:absolute; inset:24%; border-radius:50%; border:1px solid rgba(204,102,51,.55); animation:t-ping 3.6s var(--t-ease) infinite; }
.dm-hud__bar{ position:absolute; left:0; right:0; bottom:0; border-top:1px solid rgba(180,186,42,.2); background:rgba(18,20,14,.55); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.dm-hud__bar ul{ max-width:1240px; margin:0 auto; padding:14px 24px; list-style:none; display:flex; gap:36px; flex-wrap:wrap; font:500 .7rem/1.3 var(--dm-mono); letter-spacing:.18em; text-transform:uppercase; color:rgba(241,241,234,.7); }
.dm-hud__bar li{ display:flex; align-items:center; gap:10px; margin:0; }
.dm-hud__bar li::before{ content:''; width:6px; height:6px; background:var(--t-olive); transform:rotate(45deg); }
.dm-hud__bar li:first-child::before{ background:var(--t-terra); border-radius:50%; transform:none; animation:t-blink 2.4s steps(2,end) infinite; }
@keyframes t-spin{ to{ transform:rotate(360deg); } }
@keyframes t-ping{ 0%{ transform:scale(.6); opacity:.9; } 100%{ transform:scale(1.5); opacity:0; } }
@keyframes t-blink{ 50%{ opacity:.25; } }
@media (max-width:767.98px){ .dm-hud__ret{ width:300px; right:-110px; top:30%; opacity:.45; } .dm-hud__bar ul{ gap:14px 22px; font-size:.62rem; } .dm-hud__bar li:nth-child(n+3){ display:none; } }

/* ---------- Pages « bandeau photo + titre » : panneau superposé ---------- */
body.dm-terrain.dm-page #content > .content-wrap > .section.parallax:first-child{ padding:clamp(150px,22vw,280px) 0 clamp(120px,14vw,190px) !important; position:relative; }
body.dm-terrain.dm-page #content > .content-wrap > .section.parallax:first-child::before{ content:''; position:absolute; inset:0; background:linear-gradient(0deg,rgba(18,20,14,.85),rgba(18,20,14,.2) 60%,rgba(18,20,14,.5)); }
body.dm-terrain.dm-page #content > .content-wrap > .section.parallax:first-child::after{ content:''; position:absolute; inset:0; background:var(--t-topo) 0 0/600px repeat; opacity:.25; mix-blend-mode:screen; }
body.dm-terrain.dm-page #page-title{ position:relative; z-index:3; margin:clamp(-150px,-11vw,-90px) auto 0 !important; max-width:1240px; width:calc(100% - 32px);
  padding:6px !important; border-radius:var(--t-r-lg); background:rgba(241,241,234,.08) !important; background-image:none !important; border:1px solid rgba(180,186,42,.22) !important; -webkit-backdrop-filter:none; }
body.dm-terrain.dm-page #page-title > .container{ background:var(--t-night) var(--t-topo) right -120px top -160px/700px no-repeat; border-radius:calc(var(--t-r-lg) - 6px); padding:clamp(30px,4vw,56px) clamp(24px,4vw,60px) clamp(28px,3.4vw,48px) !important; max-width:none !important; box-shadow:inset 0 1px 0 rgba(255,255,255,.07); }
body.dm-terrain.dm-page #page-title::after{ display:none !important; }
body.dm-terrain.dm-page #page-title h1{ font-family:var(--t-display) !important; font-size:clamp(2.1rem,1.1rem + 3.6vw,4.4rem) !important; font-weight:700 !important; letter-spacing:-.025em !important; line-height:1 !important; color:#f8f8f3 !important; max-width:20ch; }
body.dm-terrain.dm-page #page-title span{ color:rgba(241,241,234,.72) !important; max-width:60ch; font-size:1.06rem !important; }
body.dm-terrain.dm-page #page-title .breadcrumb{ order:-1; margin:0 0 22px !important; font-family:var(--dm-mono) !important; }
body.dm-terrain.dm-page #page-title .breadcrumb, body.dm-terrain.dm-page #page-title .breadcrumb a, body.dm-terrain.dm-page #page-title .breadcrumb-item{ color:var(--t-olive-l) !important; font-family:var(--dm-mono) !important; }
body.dm-terrain.dm-page #page-title .container{ display:flex; flex-direction:column; }

/* ---------- Bandeau des sociétés du groupe ---------- */
body.dm-terrain .dm-rail-title{ max-width:1240px; margin:0 auto; padding:clamp(48px,6vw,80px) 24px 0 !important; text-align:start !important; }
body.dm-terrain .dm-rail-title h4{ font-family:var(--dm-mono) !important; font-size:.72rem !important; letter-spacing:.2em !important; text-transform:uppercase !important; color:var(--t-olive-d) !important; font-weight:500 !important; margin:0 !important; }
body.dm-terrain .dm-rail{ max-width:1240px; margin:18px auto 0 !important; padding:6px; gap:6px; border-radius:var(--t-r-lg); background:rgba(57,61,0,.05); border:1px solid var(--t-line); display:grid !important; grid-template-columns:repeat(5,1fr); }
body.dm-terrain .dm-rail > div{ width:auto !important; max-width:none !important; padding:0 !important; margin:0 !important; }
body.dm-terrain .dm-rail > div > a{ display:grid; place-items:center; height:108px; background:#fff; border-radius:calc(var(--t-r-lg) - 6px); box-shadow:inset 0 1px 0 #fff, 0 1px 2px rgba(57,61,0,.06); transition:transform .3s var(--t-ease), box-shadow .3s ease; }
body.dm-terrain .dm-rail img{ max-height:54px !important; height:auto !important; max-width:80%; width:auto !important; filter:grayscale(1) contrast(1.05); opacity:.78; transition:filter .3s ease, opacity .3s ease; }
@media (hover:hover) and (pointer:fine){ body.dm-terrain .dm-rail > div > a:hover{ transform:translateY(-3px); box-shadow:0 18px 30px -20px rgba(57,61,0,.5); } body.dm-terrain .dm-rail > div > a:hover img{ filter:none; opacity:1; } }
@media (max-width:767.98px){ body.dm-terrain .dm-rail{ grid-template-columns:repeat(2,1fr); margin:14px 16px 0 !important; } body.dm-terrain .dm-rail > div:last-child{ grid-column:1/-1; } }

/* ---------- Contenus ---------- */
body.dm-terrain #content{ background:var(--t-paper) !important; }
body.dm-terrain.dm-page #content .content-wrap{ position:relative; }
body.dm-terrain #content .container{ max-width:1240px; }
body.dm-terrain #content :is(.col-md-4,.col-md-5,.col-md-6,.col-lg-4,.col-lg-5,.col-lg-6,.col-sm-6,.col-lg-3,.col-lg-7,.col-lg-8) > img:not([src$=".svg"]),
body.dm-terrain #content :is(.col-md-4,.col-md-5,.col-md-6,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-3,.col-lg-7,.col-lg-8) > a > img:not([src$=".svg"]),
body.dm-terrain #content .dm-figure img, body.dm-terrain #content figure > img{
  border-radius:var(--t-r-md); box-shadow:0 0 0 6px var(--t-bone), 0 0 0 7px var(--t-line), 0 24px 44px -26px rgba(57,61,0,.55); }
body.dm-terrain #content .dm-clip{ clip-path:inset(0 0 100% 0 round 14px); transition:clip-path 1.1s var(--t-ease-io); }
body.dm-terrain #content .dm-clip.t-in{ clip-path:inset(0 0 0 0 round 14px); }
body.dm-terrain #content hr{ border-color:var(--t-line) !important; opacity:1; }
body.dm-terrain #content blockquote{ border-left:3px solid var(--t-terra) !important; background:var(--t-bone); border-radius:0 var(--t-r-md) var(--t-r-md) 0; padding:18px 24px; }
body.dm-terrain #content table{ border-radius:var(--t-r-md); overflow:hidden; }
body.dm-terrain #content th{ background:var(--t-night) !important; color:#f1f1ea !important; font-family:var(--dm-mono) !important; font-size:.74rem; letter-spacing:.1em; text-transform:uppercase; }
body.dm-terrain #content :is(.dm-callout,.dm-qa,.dm-person,.dm-block){ border-radius:var(--t-r-md) !important; }
body.dm-terrain #content ul:not(.dm-steps):not(.breadcrumb):not([class*="menu"]) > li::marker{ color:var(--t-olive); }
body.dm-terrain .dm-toc details{ border-radius:var(--t-r-md) !important; background:#fff; }
body.dm-terrain .dm-toc a.is-active{ background:rgba(139,144,0,.1) !important; border-left-color:var(--t-terra) !important; }
body.dm-terrain .dm-related{ background:var(--t-bone) var(--t-topo) right -200px center/700px no-repeat; border:1px solid var(--t-line); border-radius:var(--t-r-lg); padding:clamp(22px,3vw,36px) !important; }
body.dm-terrain .dm-related p{ margin-bottom:10px; }
body.dm-terrain .dm-related strong{ font-family:var(--dm-mono) !important; font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--t-olive-d) !important; font-weight:500 !important; margin-right:6px; }
body.dm-terrain .dm-kicker, body.dm-terrain .dm-eyebrow, body.dm-terrain .before-heading{ color:var(--t-olive-d) !important; font-family:var(--dm-mono) !important; font-style:normal !important; letter-spacing:.18em !important; text-transform:uppercase; font-size:.72rem !important; }
/* cartes génériques : effet projecteur au survol */
body.dm-terrain .t-spot{ position:relative; isolation:isolate; }
body.dm-terrain .t-spot::before{ content:''; position:absolute; inset:0; border-radius:inherit; z-index:-1; opacity:0; transition:opacity .3s ease; background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%), rgba(204,102,51,.22), transparent 60%); pointer-events:none; }
@media (hover:hover) and (pointer:fine){ body.dm-terrain .t-spot:hover::before{ opacity:1; } }

/* ---------- Pied de page ---------- */
body.dm-terrain #footer{ background:var(--t-night) var(--t-topo) right -160px top -120px/760px no-repeat !important; border-top:0 !important; position:relative; overflow:hidden; }
body.dm-terrain #footer::before{ content:''; position:absolute; left:0; right:0; top:0; height:3px; background:linear-gradient(90deg,var(--t-khaki),var(--t-olive) 35%,var(--t-terra) 70%,var(--t-terra-l)); }
body.dm-terrain #footer::after{ content:'DEMINETEC'; position:absolute; left:50%; bottom:-.2em; transform:translateX(-50%); font:700 clamp(4rem,17vw,15rem)/1 var(--t-display); letter-spacing:-.02em; color:transparent; -webkit-text-stroke:1px rgba(180,186,42,.16); white-space:nowrap; pointer-events:none; }
body.dm-terrain #footer .footer-widgets-wrap{ position:relative; z-index:1; padding-bottom:clamp(110px,14vw,220px) !important; }
body.dm-terrain #footer, body.dm-terrain #footer p, body.dm-terrain #footer address, body.dm-terrain #footer li, body.dm-terrain #footer small{ color:rgba(241,241,234,.72) !important; }
body.dm-terrain #footer :is(h4,h3,.widget-title){ font-family:var(--dm-mono) !important; font-size:.72rem !important; letter-spacing:.2em !important; text-transform:uppercase; color:var(--t-olive-l) !important; font-weight:500 !important; }
body.dm-terrain #footer a:not(.social-icon){ color:#f1f1ea !important; text-decoration:none; }
@media (hover:hover) and (pointer:fine){ body.dm-terrain #footer a:not(.social-icon):hover{ color:var(--t-terra) !important; } }
body.dm-terrain #footer [style*="world-map"]{ background-image:none !important; }
body.dm-terrain #copyrights{ background:#0c0d09 !important; color:rgba(241,241,234,.55) !important; border-top:1px solid rgba(180,186,42,.14); font-family:var(--dm-mono) !important; font-size:.74rem !important; letter-spacing:.04em; }
body.dm-terrain .social-icon{ border-radius:50% !important; }
/* bloc galerie avant pied de page */
body.dm-terrain .container.clearfix[style*="margin:40px auto 46px"]{ background:var(--t-night) var(--t-topo) center/700px; border-radius:var(--t-r-lg); padding:clamp(28px,4vw,52px) !important; color:#f1f1ea; max-width:1240px; }
body.dm-terrain .container.clearfix[style*="margin:40px auto 46px"] p{ color:rgba(241,241,234,.82) !important; }
body.dm-terrain .container.clearfix[style*="margin:40px auto 46px"] a:not(.button){ color:#e0894f !important; }

/* ---------- ACCUEIL ---------- */
body.dm-terrain.dm-home #content, body.dm-terrain.dm-home #content .content-wrap{ background:var(--t-paper) !important; }
body.dm-terrain.dm-home #content > .content-wrap > .section:first-child, body.dm-terrain.dm-home .section.mt-0.border-0.mb-0{ background:var(--t-night) !important; padding:clamp(64px,8vw,110px) 0 28px !important; position:relative; }
body.dm-terrain.dm-home .section.mt-0.border-0.mb-0 .heading-block{ text-align:start !important; max-width:1240px; margin:0 auto 34px !important; padding:0 24px; }
body.dm-terrain.dm-home #content .section.mt-0.border-0.mb-0 .heading-block h2::before{ left:0 !important; margin-left:0 !important; }
body.dm-terrain.dm-home #content .section.mt-0.border-0.mb-0 .heading-block h2{ color:#f8f8f3 !important; font-size:clamp(2rem,1.2rem + 2.6vw,3.6rem) !important; font-weight:700 !important; }
body.dm-terrain.dm-home .section.mt-0.border-0.mb-0 .heading-block span{ color:rgba(241,241,234,.66) !important; font-family:var(--dm-mono) !important; font-size:.78rem !important; letter-spacing:.14em; text-transform:uppercase; }
body.dm-terrain.dm-home .section.mt-0.border-0.mb-0 .heading-block::after{ display:none !important; }
/* tuiles du groupe : bento à double cadre */
body.dm-terrain.dm-home #portfolio{ height:auto !important; align-items:start; box-shadow:0 0 0 100vmax var(--t-night); clip-path:inset(0 -100vmax -1px); padding-bottom:20px !important; background:var(--t-night); max-width:1288px; margin:0 auto !important; padding:0 24px 0; display:grid !important; grid-template-columns:repeat(6,1fr); gap:10px; }
body.dm-terrain.dm-home #portfolio .portfolio-item{ width:auto !important; max-width:none !important; position:relative !important; left:auto !important; top:auto !important; transform:none !important; padding:5px !important; border-radius:20px; background:rgba(241,241,234,.05); border:1px solid rgba(180,186,42,.16); grid-column:span 2; }
body.dm-terrain.dm-home #portfolio .portfolio-item:nth-child(1), body.dm-terrain.dm-home #portfolio .portfolio-item:nth-child(2){ grid-column:span 3; }
body.dm-terrain.dm-home #portfolio .grid-inner{ border-radius:15px; overflow:hidden; }
body.dm-terrain.dm-home #portfolio .portfolio-image img{ aspect-ratio:16/9; object-fit:cover; width:100%; height:auto; transition:transform 1.2s var(--t-ease); }
body.dm-terrain.dm-home #portfolio .portfolio-item:nth-child(n+3) .portfolio-image img{ aspect-ratio:4/3; }
@media (hover:hover) and (pointer:fine){ body.dm-terrain.dm-home #portfolio .portfolio-item:hover .portfolio-image img{ transform:scale(1.05); } }
body.dm-terrain.dm-home #portfolio .portfolio-desc{ background:transparent !important; padding:14px 10px 10px !important; }
body.dm-terrain.dm-home #portfolio .portfolio-desc h3, body.dm-terrain.dm-home #portfolio .portfolio-desc h3 a{ color:#f1f1ea !important; font-size:1.05rem !important; }
body.dm-terrain.dm-home #portfolio .portfolio-desc span, body.dm-terrain.dm-home #portfolio .portfolio-desc span a{ color:rgba(241,241,234,.6) !important; font-family:var(--dm-mono) !important; font-size:.72rem; letter-spacing:.06em; }
body.dm-terrain.dm-home #portfolio .bg-overlay-bg{ background:rgba(18,20,14,.55) !important; }
@media (max-width:991.98px){ body.dm-terrain.dm-home #portfolio{ grid-template-columns:repeat(2,1fr); } body.dm-terrain.dm-home #portfolio .portfolio-item, body.dm-terrain.dm-home #portfolio .portfolio-item:nth-child(-n+2){ grid-column:span 1; } body.dm-terrain.dm-home #portfolio .portfolio-item:last-child{ grid-column:1/-1; } }
/* bandeau chiffre-clé */
body.dm-terrain .promo[style*="#f7941d"], body.dm-terrain a:not(.button)[style*="#f7941d"]{ background:var(--t-night) !important; border-top:1px solid rgba(180,186,42,.16); border-bottom:1px solid rgba(180,186,42,.16); margin-top:40px !important; }
body.dm-terrain [style*="#f7941d"] .container{ color:rgba(241,241,234,.8) !important; font-family:var(--dm-mono) !important; letter-spacing:.06em; font-size:.86rem; text-transform:uppercase; padding:22px 24px !important; }
body.dm-terrain [style*="#f7941d"] strong{ color:var(--t-terra) !important; font-family:var(--t-display); font-size:1.3rem; letter-spacing:0; }
/* titre principal de l'accueil + CTA + étapes */
body.dm-terrain.dm-home #content h1{ font-size:clamp(2.2rem,1.2rem + 3.4vw,4.4rem) !important; text-align:start; max-width:16ch; }
body.dm-terrain.dm-home #content .mx-auto.center.clearfix[style*="max-width: 900px"]{ text-align:start !important; max-width:1240px !important; padding:0 12px; }
body.dm-terrain.dm-home #content .mx-auto.center.clearfix[style*="max-width: 250px"]{ display:none; }
body.dm-terrain.dm-home .dm-cta{ justify-content:flex-start !important; max-width:1240px; margin-left:auto; margin-right:auto; padding:0 12px; }
body.dm-terrain .dm-steps{ counter-reset:tstep; }
body.dm-terrain .dm-steps li{ border-radius:var(--t-r-md); }
body.dm-terrain .dm-steps li::before{ background:var(--t-night) !important; color:var(--t-olive-l) !important; border:1px solid var(--t-olive) !important; font-family:var(--dm-mono) !important; box-shadow:0 0 0 6px var(--t-paper) !important; }
body.dm-terrain .dm-steps li::after{ background:linear-gradient(90deg,var(--t-olive),var(--t-terra)) !important; opacity:.5; }
body.dm-terrain .dm-steps a{ color:var(--t-ink) !important; }
/* statistiques historiques */
body.dm-terrain.dm-home .row.justify-content-center.col-mb-50{ max-width:1240px; margin:48px auto 0 !important; gap:0; }
body.dm-terrain.dm-home .fbox-plain{ height:100%; padding:6px; border-radius:var(--t-r-lg); background:rgba(57,61,0,.05); border:1px solid var(--t-line); }
body.dm-terrain.dm-home .fbox-plain > *{ position:relative; }
body.dm-terrain.dm-home .fbox-plain .fbox-content{ background:#fff; border-radius:calc(var(--t-r-lg) - 6px); padding:28px 26px 26px 26px !important; margin:0 !important; height:100%; box-shadow:inset 0 1px 0 #fff, 0 1px 2px rgba(57,61,0,.06); }
body.dm-terrain.dm-home .fbox-plain .fbox-icon{ position:absolute !important; right:26px; top:26px; z-index:2; width:40px !important; height:40px !important; }
body.dm-terrain.dm-home .fbox-plain .fbox-icon i{ color:var(--t-olive) !important; font-size:1.6rem !important; }
body.dm-terrain.dm-home .fbox-plain .fbox-icon img{ width:34px; height:auto; filter:sepia(1) saturate(3) hue-rotate(20deg) brightness(.7); }
body.dm-terrain.dm-home .fbox-plain h3{ font-family:var(--dm-mono) !important; font-size:.76rem !important; letter-spacing:.2em !important; text-transform:uppercase !important; color:var(--t-olive-d) !important; font-weight:500 !important; margin-bottom:18px !important; }
body.dm-terrain.dm-home .fbox-plain p b{ display:block; font-family:var(--t-display); font-size:clamp(1.7rem,1.2rem + 1.4vw,2.4rem); line-height:1.05; color:var(--t-terra-d); margin:2px 0 8px; letter-spacing:-.01em; }
/* vidéo réglementation */
body.dm-terrain.dm-home .col-lg-12.center.col-padding[style*="depollution_guerre"]{ background:var(--t-night) !important; padding:clamp(56px,7vw,100px) 24px !important; }
body.dm-terrain.dm-home .col-lg-12.center.col-padding[style*="depollution_guerre"] .heading-block{ text-align:start; max-width:1100px; margin:0 auto 26px !important; }
body.dm-terrain.dm-home #content .col-lg-12.center.col-padding[style*="depollution_guerre"] h3{ color:#f8f8f3 !important; font-size:clamp(1.9rem,1.2rem + 2.4vw,3.4rem) !important; font-weight:700 !important; }
body.dm-terrain.dm-home .col-lg-12.center.col-padding[style*="depollution_guerre"] .heading-block::after{ display:none !important; }
body.dm-terrain.dm-home .col-lg-12.center.col-padding[style*="depollution_guerre"] .center.bottommargin{ max-width:1100px; margin:0 auto !important; padding:6px; border-radius:var(--t-r-lg); background:rgba(241,241,234,.05); border:1px solid rgba(180,186,42,.18); }
body.dm-terrain.dm-home .col-lg-12.center.col-padding[style*="depollution_guerre"] .center.bottommargin img{ border-radius:calc(var(--t-r-lg) - 6px); }
body.dm-terrain.dm-home .overlay-trigger-icon{ background:var(--t-terra) !important; color:var(--t-ink) !important; box-shadow:0 0 0 12px rgba(204,102,51,.25); }
/* trois métiers : bento sombre aux couleurs du logo */
body.dm-terrain .dm-svcrow{ background:var(--t-night); padding:0 12px clamp(56px,7vw,100px) !important; margin:0 !important; display:grid !important; grid-template-columns:1.25fr 1fr 1fr; gap:10px; }
body.dm-terrain .dm-svcrow > .dm-svc{ width:auto !important; max-width:none !important; flex:none !important; border-radius:var(--t-r-lg); padding:clamp(30px,3vw,46px) !important; min-height:360px; display:flex; flex-direction:column; counter-increment:svc; overflow:hidden; border:1px solid rgba(241,241,234,.08); }
body.dm-terrain .dm-svcrow{ counter-reset:svc; }
body.dm-terrain .dm-svc > div{ display:flex; flex-direction:column; height:100%; position:relative; z-index:1; }
body.dm-terrain .dm-svc--1{ background:linear-gradient(160deg,#4d6600 0%,#393d00 100%) !important; }
body.dm-terrain .dm-svc--2{ background:linear-gradient(160deg,#2b2e1d 0%,#1a1d13 100%) !important; }
body.dm-terrain .dm-svc--3{ background:linear-gradient(160deg,#cc6633 0%,#993300 100%) !important; }
body.dm-terrain .dm-svc::after{ content:'0' counter(svc); position:absolute; right:22px; top:14px; font:700 5.5rem/1 var(--t-display); color:rgba(255,255,255,.07); letter-spacing:-.04em; }
body.dm-terrain #content .dm-svc h3{ color:#fff !important; font-size:clamp(1.4rem,1.1rem + .9vw,1.95rem) !important; font-weight:700 !important; margin-bottom:16px !important; max-width:14ch; }
body.dm-terrain #content .dm-svc p{ color:rgba(255,255,255,.82) !important; text-align:start !important; line-height:1.65 !important; flex:1; }
body.dm-terrain #content .dm-svc .button{ align-self:flex-start; margin-top:18px !important; color:#fff !important; border-color:rgba(255,255,255,.4) !important; }
body.dm-terrain .dm-svc .bgicon{ color:rgba(255,255,255,.07) !important; right:-20px !important; bottom:-30px !important; font-size:12rem !important; }
@media (max-width:991.98px){ body.dm-terrain .dm-svcrow{ grid-template-columns:1fr; } body.dm-terrain .dm-svcrow > .dm-svc{ min-height:0; } }
/* clients */
body.dm-terrain.dm-home .col-lg-12.col-padding.overflow-hidden{ background:var(--t-bone) !important; border-top:1px solid var(--t-line); border-bottom:1px solid var(--t-line); }
body.dm-terrain.dm-home .col-lg-12.col-padding.overflow-hidden h3{ font-family:var(--dm-mono) !important; font-size:.76rem !important; letter-spacing:.22em !important; text-transform:uppercase !important; color:var(--t-olive-d) !important; font-weight:500 !important; }
body.dm-terrain .oc-clients .oc-item img{ filter:grayscale(1) contrast(1.1); opacity:.6; mix-blend-mode:multiply; transition:filter .3s ease, opacity .3s ease; }
@media (hover:hover) and (pointer:fine){ body.dm-terrain .oc-clients .oc-item:hover img{ filter:none; opacity:1; } }
/* texte long de l'accueil */
body.dm-terrain.dm-home .w40hp{ max-width:1000px !important; }
body.dm-terrain.dm-home .w40hp h3{ padding-left:18px; border-left:2px solid var(--t-olive); }

/* ---------- Apparitions ---------- */
body.dm-terrain .t-up{ opacity:0; transform:translate3d(0,28px,0); filter:blur(6px); transition:opacity .9s var(--t-ease), transform .9s var(--t-ease), filter .9s var(--t-ease); transition-delay:calc(var(--t-i,0) * 80ms); }
body.dm-terrain .t-up.t-in{ opacity:1; transform:none; filter:none; }
@media (prefers-reduced-motion:reduce){
  body.dm-terrain .t-up, body.dm-terrain #content .dm-clip{ opacity:1 !important; transform:none !important; filter:none !important; clip-path:none !important; transition:none !important; }
  .dm-hud__ret img, .dm-hud__ret::after, .dm-hud__bar li::before{ animation:none !important; }
  body.dm-terrain #content :is(h1,h2) :is(strong,span){ transition:none; background-size:100% 100%; }
}
@media (max-width:767.98px){
  body.dm-terrain #content h2{ margin-top:48px !important; }
  body.dm-terrain .slider-caption h2{ max-width:none; }
  body.dm-terrain .button{ line-height:44px !important; }
}
@media print{ body.dm-terrain::after, .dm-hud{ display:none !important; } }

/* --- correctifs passe 2 --- */
body.dm-terrain.stretched .dm-cta .button.dm-btn-primary{ background:var(--t-terra) !important; color:var(--t-ink) !important; border-color:transparent !important; }
body.dm-terrain.stretched .dm-cta .button.dm-btn-secondary{ background:transparent !important; color:var(--t-ink) !important; border:1px solid rgba(29,29,27,.32) !important; box-shadow:none !important; }
body.dm-terrain.stretched .dm-cta .dm-tel{ color:var(--t-terra-d) !important; font-weight:500; }
body.dm-terrain.dark #content .content-wrap > .container, body.dm-terrain.dark #content .container.clearfix{ color:var(--t-text); }
body.dm-terrain.dark #content .dm-steps span{ color:var(--t-muted) !important; }
body.dm-terrain.dark #content .dm-steps a{ color:var(--t-ink) !important; }
body.dm-terrain.dark #content .fbox-content p, body.dm-terrain.dark #content .mx-auto p{ color:var(--t-text) !important; }
body.dm-terrain.dm-home .fbox-plain h3{ padding-right:52px; }
body.dm-terrain #slider > .d-flex.position-absolute{ bottom:70px !important; z-index:5 !important; }
body.dm-terrain .swiper_wrapper ~ .d-flex.position-absolute, body.dm-terrain .swiper_wrapper .d-flex.position-absolute{ bottom:70px !important; }
body.dm-terrain a.button[style*="#f7941d"]{ background:var(--t-terra) !important; color:var(--t-ink) !important; border:0 !important; margin-top:6px !important; }
body.dm-terrain .button.button-full{ display:block !important; border-radius:0 !important; background:var(--t-night2) !important; color:rgba(241,241,234,.82) !important; line-height:1.5 !important; padding:26px 0 !important; text-align:start !important; border:0 !important; border-top:1px solid rgba(180,186,42,.16) !important; border-bottom:1px solid rgba(180,186,42,.16) !important; box-shadow:none !important; margin:0 0 clamp(56px,7vw,96px) !important; font-family:var(--dm-mono) !important; font-weight:500 !important; font-size:.84rem !important; letter-spacing:.08em !important; }
body.dm-terrain .button.button-full::after{ display:none; }
body.dm-terrain .button.button-full .container{ display:block; position:relative; padding-right:64px !important; white-space:normal; }
body.dm-terrain .button.button-full strong{ color:var(--t-terra) !important; font-family:var(--t-display) !important; font-size:1.35rem; letter-spacing:0; text-transform:none; }
body.dm-terrain .button.button-full i{ position:absolute !important; right:24px; top:50% !important; margin-top:-17px; width:34px; height:34px; border-radius:50%; border:1px solid rgba(241,241,234,.25); display:inline-grid !important; place-items:center; flex:none; top:0 !important; transition:transform .3s var(--t-ease); }
@media (hover:hover) and (pointer:fine){ body.dm-terrain .button.button-full:hover{ background:var(--t-night3) !important; } body.dm-terrain .button.button-full:hover i{ transform:translateX(4px); } }

body.dm-terrain #content .button.button-full .container{ color:rgba(241,241,234,.82) !important; }
body.dm-terrain.dm-home .section.mt-0.border-0.mb-0 .heading-block span{ text-align:start !important; display:block; }
body.dm-terrain #content .dm-svc .button{ background:transparent !important; }
body.dm-terrain #wrapper{ background:var(--t-paper) !important; }
body.dm-terrain #logo img{ height:46px !important; width:auto !important; }
body.dm-terrain .dm-rail-title h4{ text-align:start !important; }
body.dm-terrain.dm-page #content > .d-flex.position-absolute{ top:116px !important; bottom:auto !important; left:auto !important; right:32px; }
body.dm-terrain .feature-box.fbox-border .fbox-icon, body.dm-terrain .feature-box .fbox-icon::after{ border-radius:50% !important; }
/* RTL */
[dir="rtl"] body.dm-terrain .swiper-slide-bg::after{ background:linear-gradient(270deg,rgba(18,20,14,.92) 0%,rgba(18,20,14,.6) 42%,rgba(18,20,14,.08) 80%), linear-gradient(0deg,rgba(18,20,14,.85),transparent 40%); }
[dir="rtl"] body.dm-terrain #slider.slider-element:not(.swiper_wrapper)::before{ background:linear-gradient(270deg,rgba(18,20,14,.94) 0%,rgba(18,20,14,.72) 38%,rgba(18,20,14,.18) 78%), linear-gradient(0deg,rgba(18,20,14,.9),transparent 38%); }
[dir="rtl"] .dm-hud__ret{ right:auto; left:clamp(-120px,-4vw,0px); }
[dir="rtl"] body.dm-terrain #content h2::before{ left:auto; right:0; }
[dir="rtl"] body.dm-terrain .slider-caption::before{ padding-left:0; padding-right:46px; background-position:100% 50%; }
[dir="rtl"] body.dm-terrain .button::after{ margin-right:0; margin-left:-12px; transform:scaleX(-1); }
[dir="rtl"] body.dm-terrain.dm-home .w40hp h3{ padding-left:0; padding-right:18px; border-left:0; border-right:2px solid var(--t-olive); }
.dm-hud__bar li{ unicode-bidi:isolate; } .dm-hud__bar li:first-child, .dm-hud__bar li:nth-child(2), .dm-hud__bar li:last-child{ direction:ltr; }
body.dm-terrain #slider .heading-block{ display:flex; flex-direction:column; }
/* --- Logos du groupe : taille visuelle homogène (lot 6b) --- */
body.dm-terrain #wrapper #content .dm-rail img{ height:auto !important; max-height:none !important; max-width:none !important; }
body.dm-terrain #wrapper #content .dm-rail img[src*="DEMINETEC_logo_carroussel"]{ width:88% !important; }
body.dm-terrain #wrapper #content .dm-rail img[src*="SEMTEC_logo"]{ width:88% !important; }
body.dm-terrain #wrapper #content .dm-rail img[src*="GEODE_logo"]{ width:85% !important; }
body.dm-terrain #wrapper #content .dm-rail img[src*="DEMINETEC_ECG"]{ width:81% !important; }
body.dm-terrain #wrapper #content .dm-rail img[src*="UXOMAP_logo"]{ width:41% !important; }
body.dm-terrain .dm-rail{ grid-template-columns:repeat(5,minmax(0,1fr)) !important; }
body.dm-terrain .dm-rail > div{ min-width:0 !important; }
body.dm-terrain .dm-rail > div > a{ padding:0 8px; width:100%; min-width:0; }
@media (max-width:767.98px){
  body.dm-terrain .dm-rail{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  body.dm-terrain .dm-rail > div:last-child{ grid-column:1/-1 !important; width:calc(50% - 3px) !important; justify-self:center; }
  body.dm-terrain .dm-rail > div > a{ height:92px; }
}
body.dm-terrain.dm-home #portfolio{ grid-template-columns:repeat(5,1fr) !important; }
body.dm-terrain.dm-home #portfolio .portfolio-item, body.dm-terrain.dm-home #portfolio .portfolio-item:nth-child(-n+2){ grid-column:auto !important; }
body.dm-terrain.dm-home #portfolio .portfolio-image img, body.dm-terrain.dm-home #portfolio .portfolio-item:nth-child(n+3) .portfolio-image img{ aspect-ratio:4/3 !important; }
@media (max-width:991.98px){
  body.dm-terrain.dm-home #portfolio{ grid-template-columns:repeat(2,1fr) !important; }
  body.dm-terrain.dm-home #portfolio .portfolio-item:last-child{ grid-column:1/-1 !important; width:calc(50% - 5px) !important; justify-self:center; }
}
