*{box-sizing:border-box}
:root{
  --bg:#02040a;
  --panel:rgba(5,9,20,.76);
  --panel2:rgba(255,255,255,.045);
  --line:rgba(255,255,255,.105);
  --line2:rgba(93,140,255,.22);
  --text:#fff;
  --muted:rgba(255,255,255,.72);
  --soft:rgba(255,255,255,.58);
  --blue:#5d8cff;
  --pink:#ff4aa2;
  --shell:1180px;
}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{overflow-x:hidden}
a{color:inherit;text-decoration:none}
.imr-page{
  min-height:100vh;
  background:
    radial-gradient(circle at 15% -4%,rgba(93,140,255,.19),transparent 34%),
    radial-gradient(circle at 88% 6%,rgba(255,74,162,.12),transparent 33%),
    linear-gradient(180deg,#050814 0%,#02040a 44%,#02040a 100%);
}
.imr-shell{width:min(calc(100% - 32px),var(--shell));margin:0 auto}
.imr-header{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.imr-logo{display:flex;flex-direction:column;line-height:1}
.imr-logo-main{font-size:20px;font-weight:950;letter-spacing:.12em}
.imr-logo-sub{margin-top:7px;color:var(--soft);font-size:12px;font-weight:750}
.imr-nav{display:flex;align-items:center;gap:22px;color:rgba(255,255,255,.76);font-size:14px;font-weight:850}
.imr-nav a.active{color:#fff}
.imr-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:48px;align-items:center;padding:70px 0 46px}
.imr-kicker,.imr-section-kicker{display:flex;align-items:center;gap:10px;text-transform:uppercase;font-size:12px;font-weight:950;letter-spacing:.16em;color:var(--blue)}
.imr-kicker .blue{color:var(--blue)}
.imr-kicker .pink{color:var(--pink)}
.imr-title{margin:18px 0 0;font-size:clamp(48px,6vw,86px);line-height:.92;letter-spacing:-.065em;font-weight:930}
.imr-title strong{text-shadow:0 0 38px rgba(93,140,255,.32)}
.imr-lead{max-width:720px;margin:26px 0 0;color:rgba(255,255,255,.76);font-size:19px;line-height:1.62;font-weight:580}
.imr-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.imr-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:15px 20px;font-weight:950;font-size:14px;border:1px solid rgba(255,255,255,.12)}
.imr-btn.primary{background:linear-gradient(135deg,var(--blue),var(--pink));box-shadow:0 18px 52px rgba(93,140,255,.23)}
.imr-btn.secondary{background:rgba(255,255,255,.055);color:rgba(255,255,255,.82)}
.imr-hero-card{
  min-height:480px;border:1px solid rgba(255,255,255,.13);border-radius:34px;overflow:hidden;position:relative;
  background:
    linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.78)),
    url('/wp-content/uploads/immersize-static/game-template-hero-58b/projet-horizon-hero-58b.webp');
  background-size:cover;background-position:center;
  box-shadow:0 26px 95px rgba(0,0,0,.42);
}
.imr-hero-card::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(93,140,255,.10),rgba(255,74,162,.09));pointer-events:none}
.imr-hero-badge{position:absolute;left:22px;right:22px;bottom:22px;z-index:2;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:rgba(2,5,12,.72);backdrop-filter:blur(16px);padding:20px}
.imr-hero-badge strong{display:block;font-size:18px;letter-spacing:-.02em}
.imr-hero-badge span{display:block;margin-top:8px;color:var(--muted);font-size:14px;line-height:1.48}

.imr-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px auto 48px}
.imr-proof-card{border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.045);padding:20px;min-height:118px}
.imr-proof-card strong{display:block;font-size:25px;letter-spacing:-.04em}
.imr-proof-card span{display:block;margin-top:8px;color:var(--muted);font-size:13px;line-height:1.45;font-weight:650}

.imr-panel{border:1px solid var(--line);border-radius:32px;background:var(--panel);box-shadow:0 24px 90px rgba(0,0,0,.24);padding:34px;margin-bottom:32px}
.imr-section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:26px}
.imr-h2{margin:10px 0 0;font-size:clamp(32px,4vw,58px);line-height:1;letter-spacing:-.048em;font-weight:920}
.imr-section-head p{max-width:560px;color:var(--muted);line-height:1.62;margin:0;font-weight:580}

.imr-family{margin-bottom:34px}
.imr-family:last-child{margin-bottom:0}
.imr-family-head{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:26px;align-items:end;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.08)}
.imr-family-head h3{margin:8px 0 0;font-size:clamp(25px,2.7vw,38px);line-height:1.03;letter-spacing:-.04em}
.imr-family-head p{margin:0;color:var(--muted);line-height:1.62;font-weight:570}

.imr-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.imr-case{
  position:relative;border:1px solid rgba(255,255,255,.105);border-radius:27px;overflow:hidden;background:#050914;
  min-height:520px;display:flex;flex-direction:column;box-shadow:0 20px 70px rgba(0,0,0,.24);
}
.imr-case-image{height:205px;position:relative;overflow:hidden;background:#050811}
.imr-case-image::before{content:"";position:absolute;inset:0;background-image:var(--img);background-size:cover;background-position:center;transform:scale(1.012);filter:saturate(1.05) contrast(1.02)}
.imr-case-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.55))}
.imr-case-body{padding:21px;display:flex;flex-direction:column;gap:15px;flex:1}
.imr-tag{display:inline-flex;align-self:flex-start;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.08);padding:7px 10px;color:rgba(255,255,255,.78);font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.imr-case h4{margin:0;font-size:25px;line-height:1.02;letter-spacing:-.035em}
.imr-problem,.imr-solution{border-top:1px solid rgba(255,255,255,.08);padding-top:14px}
.imr-label{display:block;color:var(--blue);font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}
.imr-solution .imr-label{color:var(--pink)}
.imr-case p{margin:0;color:rgba(255,255,255,.72);font-size:14px;line-height:1.52;font-weight:560}
.imr-case-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}
.imr-case-link{font-size:13px;font-weight:950;color:#fff}
.imr-format{color:rgba(255,255,255,.55);font-size:12px;font-weight:850}

.imr-editorial{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:34px;align-items:start}
.imr-editorial p{margin:0;color:rgba(255,255,255,.76);font-size:16px;line-height:1.74;font-weight:570}
.imr-editorial p+p{margin-top:16px}

.imr-final{margin:34px auto 58px;text-align:center;padding:44px 24px;border:1px solid rgba(93,140,255,.24);border-radius:32px;background:radial-gradient(circle at 50% 0%,rgba(93,140,255,.17),transparent 45%),rgba(5,9,20,.72)}
.imr-final .imr-section-kicker{justify-content:center}
.imr-final .imr-h2{max-width:820px;margin-left:auto;margin-right:auto}
.imr-final .imr-btn{margin-top:24px}

@media(max-width:1100px){
  .imr-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:980px){
  .imr-header{height:auto;padding:22px 0;align-items:flex-start}
  .imr-nav{max-width:58vw;overflow-x:auto;padding-bottom:8px;gap:16px;white-space:nowrap}
  .imr-hero{grid-template-columns:1fr;padding:42px 0 28px}
  .imr-hero-card{min-height:340px}
  .imr-proof{grid-template-columns:repeat(2,minmax(0,1fr))}
  .imr-section-head{display:block}
  .imr-section-head p{margin-top:14px}
  .imr-family-head{grid-template-columns:1fr}
  .imr-editorial{grid-template-columns:1fr}
}
@media(max-width:660px){
  .imr-shell{width:min(calc(100% - 24px),var(--shell))}
  .imr-title{font-size:44px}
  .imr-lead{font-size:16px}
  .imr-proof{grid-template-columns:1fr}
  .imr-panel{padding:22px 18px;border-radius:25px}
  .imr-case-grid{grid-template-columns:1fr}
  .imr-case{min-height:auto}
}

/* ============================================================
   104D — Cinematic video hero for Réalisations
   Explicit video source: /wp-content/uploads/2026/04/header-video-previews-v2/horizon-hv4.mp4
   Poster: /wp-content/uploads/immersize-static/game-template-hero-58b/projet-horizon-hero-58b.webp
   ============================================================ */

.imr-hero{
  min-height:calc(100vh - 82px);
  grid-template-columns:minmax(0,1fr) !important;
  align-items:center !important;
  padding:96px 0 78px !important;
  isolation:isolate;
}

.imr-hero-video-bg{
  position:absolute;
  inset:0 calc((100vw - min(calc(100vw - 32px), var(--shell))) / -2);
  z-index:-3;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:#02040a;
}

.imr-hero-video-bg video,
.imr-hero-video-poster{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.imr-hero-video-poster{
  z-index:0;
  background-image:url('/wp-content/uploads/immersize-static/game-template-hero-58b/projet-horizon-hero-58b.webp');
  background-size:cover;
  background-position:center;
}

.imr-hero-video-bg video{
  z-index:1;
  opacity:.74;
  filter:saturate(1.08) contrast(1.06);
}

.imr-hero-video-bg::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:
    radial-gradient(circle at 15% 12%, rgba(93,140,255,.27), transparent 35%),
    radial-gradient(circle at 88% 10%, rgba(255,74,162,.19), transparent 34%),
    linear-gradient(90deg, rgba(2,4,10,.94) 0%, rgba(2,4,10,.78) 43%, rgba(2,4,10,.42) 100%),
    linear-gradient(180deg, rgba(2,4,10,.22) 0%, rgba(2,4,10,.58) 72%, #02040a 100%);
  pointer-events:none;
}

.imr-hero-video-bg::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:220px;
  z-index:3;
  background:linear-gradient(180deg,transparent,#02040a 88%);
  pointer-events:none;
}

.imr-hero > div:not(.imr-hero-video-bg){
  max-width:900px;
  position:relative;
  z-index:2;
}

.imr-title{
  max-width:930px;
  text-shadow:0 24px 80px rgba(0,0,0,.58);
}

.imr-lead{
  max-width:790px;
  color:rgba(255,255,255,.82);
}

.imr-hero-card{
  display:none !important;
}

.imr-cinema-proof{
  margin-top:34px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  max-width:880px;
}

.imr-cinema-chip{
  border:1px solid rgba(255,255,255,.13);
  border-radius:19px;
  background:rgba(2,5,12,.56);
  backdrop-filter:blur(14px);
  padding:16px 17px;
  color:rgba(255,255,255,.78);
  font-size:13px;
  line-height:1.44;
  font-weight:760;
  box-shadow:0 18px 54px rgba(0,0,0,.22);
}

.imr-cinema-chip strong{
  display:block;
  color:#fff;
  font-size:15px;
  margin-bottom:4px;
  letter-spacing:-.015em;
}

@media(max-width:980px){
  .imr-hero{
    min-height:680px;
    padding:62px 0 54px !important;
  }

  .imr-hero-video-bg{
    inset:0 -16px;
  }

  .imr-hero-video-bg video{
    opacity:.60;
  }

  .imr-cinema-proof{
    grid-template-columns:1fr;
  }
}

@media(max-width:660px){
  .imr-hero{
    min-height:720px;
  }

  .imr-cinema-chip{
    padding:14px 15px;
  }
}

/* ============================================================
   104E — premium visual pass
   - transparent immersive header
   - stronger cinematic hero
   - less boxed desktop sections
   - cleaner hero proof row
   ============================================================ */

.imr-page{
  position:relative;
}

/* Header: no desktop slab. It floats over the hero. */
@media(min-width:981px){
  .imr-header{
    position:absolute !important;
    top:0;
    left:50%;
    transform:translateX(-50%);
    z-index:20;
    width:min(calc(100% - 64px),var(--shell));
    height:102px !important;
    background:transparent !important;
  }

  .imr-header::before{
    content:"";
    position:fixed;
    top:0;
    left:0;
    right:0;
    height:126px;
    z-index:-1;
    background:
      linear-gradient(180deg,rgba(2,4,10,.92),rgba(2,4,10,.46) 58%,transparent);
    pointer-events:none;
  }

  .imr-logo-main{
    font-size:22px;
    letter-spacing:.14em;
  }

  .imr-nav{
    gap:28px;
    font-size:14px;
    color:rgba(255,255,255,.80);
  }

  .imr-nav a{
    position:relative;
  }

  .imr-nav a.active::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-11px;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg,var(--blue),var(--pink));
    box-shadow:0 0 18px rgba(93,140,255,.55);
  }
}

/* Hero: stronger, cleaner, less grey wash. */
.imr-hero{
  min-height:100vh !important;
  padding:156px 0 108px !important;
}

.imr-hero-video-bg{
  inset:0 calc((100vw - min(calc(100vw - 32px), var(--shell))) / -2) !important;
  background:#02040a !important;
}

.imr-hero-video-poster{
  background-image:url('/wp-content/uploads/immersize-static/game-template-hero-58b/e-motions-hero-58b.webp') !important;
  opacity:.88;
}

.imr-hero-video-bg video{
  opacity:.86 !important;
  filter:saturate(1.22) contrast(1.16) brightness(.82) !important;
  transform:scale(1.03);
}

.imr-hero-video-bg::before{
  background:
    radial-gradient(circle at 18% 22%, rgba(93,140,255,.28), transparent 34%),
    radial-gradient(circle at 86% 16%, rgba(255,74,162,.21), transparent 30%),
    linear-gradient(90deg, rgba(2,4,10,.97) 0%, rgba(2,4,10,.84) 36%, rgba(2,4,10,.52) 68%, rgba(2,4,10,.62) 100%),
    linear-gradient(180deg, rgba(2,4,10,.14) 0%, rgba(2,4,10,.42) 62%, #02040a 100%) !important;
}

.imr-hero-video-bg::after{
  height:260px !important;
  background:linear-gradient(180deg,transparent,#02040a 84%) !important;
}

.imr-hero > div:not(.imr-hero-video-bg){
  max-width:960px !important;
}

.imr-title{
  max-width:980px !important;
  font-size:clamp(56px,7vw,104px) !important;
  line-height:.88 !important;
  letter-spacing:-.075em !important;
}

.imr-lead{
  max-width:780px !important;
  font-size:20px !important;
  color:rgba(255,255,255,.84) !important;
}

/* Hero proof chips: no boxy cards, more like a premium evidence strip. */
@media(min-width:981px){
  .imr-cinema-proof{
    margin-top:42px !important;
    max-width:960px !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:0 !important;
    border-top:1px solid rgba(255,255,255,.13);
    border-bottom:1px solid rgba(255,255,255,.10);
    background:
      linear-gradient(90deg,rgba(93,140,255,.06),rgba(255,74,162,.045)),
      rgba(2,5,12,.30);
    backdrop-filter:blur(12px);
  }

  .imr-cinema-chip{
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    padding:22px 28px !important;
    min-height:118px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }

  .imr-cinema-chip + .imr-cinema-chip{
    border-left:1px solid rgba(255,255,255,.10) !important;
  }

  .imr-cinema-chip strong{
    font-size:16px !important;
    margin-bottom:7px !important;
  }
}

/* Desktop sections: full-bleed blocks, no outer boxed frame. */
@media(min-width:981px){
  .imr-panel{
    width:100vw !important;
    max-width:none !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    padding:
      76px
      max(44px, calc((100vw - var(--shell)) / 2))
      78px
      max(44px, calc((100vw - var(--shell)) / 2)) !important;
    background:
      radial-gradient(circle at 12% 0%, rgba(93,140,255,.12), transparent 34%),
      radial-gradient(circle at 92% 20%, rgba(255,74,162,.075), transparent 36%),
      rgba(4,8,18,.72) !important;
    border-top:1px solid rgba(255,255,255,.075) !important;
    border-bottom:1px solid rgba(255,255,255,.075) !important;
  }

  .imr-panel + .imr-panel{
    margin-top:0 !important;
  }

  .imr-family{
    margin-bottom:64px !important;
  }

  .imr-family:last-child{
    margin-bottom:0 !important;
  }

  .imr-family-head{
    grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr) !important;
    padding-bottom:24px !important;
    margin-bottom:24px !important;
  }

  .imr-case-grid{
    gap:22px !important;
  }

  .imr-case{
    border-radius:26px !important;
    border-color:rgba(255,255,255,.075) !important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.024)) !important;
  }

  .imr-case-image{
    height:225px !important;
  }

  .imr-final{
    width:100vw !important;
    max-width:none !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
    padding:72px max(44px, calc((100vw - var(--shell)) / 2)) !important;
    background:
      radial-gradient(circle at 50% 0%,rgba(93,140,255,.22),transparent 42%),
      radial-gradient(circle at 80% 80%,rgba(255,74,162,.10),transparent 36%),
      rgba(5,9,20,.76) !important;
  }
}

/* Mobile keeps safer boxed readability. */
@media(max-width:980px){
  .imr-hero{
    min-height:720px !important;
    padding:70px 0 58px !important;
  }

  .imr-title{
    font-size:48px !important;
  }

  .imr-lead{
    font-size:17px !important;
  }
}

/* ============================================================
   104F — final visual polish
   - remove poster/video double-read
   - premium dark proof cards with gradient icons
   - stronger final CTA
   ============================================================ */

/* 1) Hero: stop visual poster blend. We keep only video poster fallback. */
.imr-hero-video-poster{
  display:none !important;
}

.imr-hero-video-bg video{
  opacity:.90 !important;
  filter:saturate(1.18) contrast(1.14) brightness(.82) !important;
  transform:scale(1.02);
}

.imr-hero-video-bg::before{
  background:
    radial-gradient(circle at 18% 22%, rgba(93,140,255,.24), transparent 34%),
    radial-gradient(circle at 86% 16%, rgba(255,74,162,.18), transparent 30%),
    linear-gradient(90deg, rgba(2,4,10,.97) 0%, rgba(2,4,10,.86) 34%, rgba(2,4,10,.54) 66%, rgba(2,4,10,.64) 100%),
    linear-gradient(180deg, rgba(2,4,10,.10) 0%, rgba(2,4,10,.44) 64%, #02040a 100%) !important;
}

/* 2) Proof cards under hero */
.imr-proof{
  gap:22px !important;
}

.imr-proof-card{
  position:relative;
  overflow:hidden;
  padding:28px 26px 26px 26px !important;
  border-radius:28px !important;
  border:1px solid rgba(255,255,255,.08) !important;
  background:
    linear-gradient(180deg, rgba(7,10,19,.96), rgba(2,4,10,.98)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 18px 54px rgba(0,0,0,.24) !important;
}

.imr-proof-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 12% 8%, rgba(93,140,255,.10), transparent 24%),
    radial-gradient(circle at 88% 100%, rgba(255,74,162,.08), transparent 28%);
  pointer-events:none;
}

.imr-proof-card strong,
.imr-proof-card span,
.imr-proof-icon{
  position:relative;
  z-index:1;
}

.imr-proof-icon{
  width:54px;
  height:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015)),
    rgba(0,0,0,.58);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 10px 26px rgba(0,0,0,.25);
}

.imr-proof-icon::before{
  display:block;
  font-size:24px;
  line-height:1;
  font-weight:900;
  background:linear-gradient(135deg, var(--blue), var(--pink));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.imr-proof-card:nth-child(1) .imr-proof-icon::before{content:"✦";}
.imr-proof-card:nth-child(2) .imr-proof-icon::before{content:"◎";}
.imr-proof-card:nth-child(3) .imr-proof-icon::before{content:"◈";}
.imr-proof-card:nth-child(4) .imr-proof-icon::before{content:"✳";}

.imr-proof-card strong{
  display:block;
  font-size:22px !important;
  line-height:1.02;
  letter-spacing:-.03em;
  margin-bottom:10px;
}

.imr-proof-card span{
  display:block;
  margin-top:0 !important;
  color:rgba(255,255,255,.76) !important;
  font-size:14px !important;
  line-height:1.52 !important;
  font-weight:580 !important;
}

/* 3) Final CTA */
.imr-final{
  position:relative;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.08) !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  background:
    radial-gradient(circle at 15% 0%, rgba(93,140,255,.16), transparent 36%),
    radial-gradient(circle at 86% 100%, rgba(255,74,162,.14), transparent 34%),
    linear-gradient(180deg, rgba(7,10,19,.92), rgba(2,4,10,.96)) !important;
}

.imr-final::before{
  content:"";
  position:absolute;
  inset:24px max(24px, calc((100vw - var(--shell)) / 2)) 24px max(24px, calc((100vw - var(--shell)) / 2));
  border:1px solid rgba(255,255,255,.07);
  border-radius:28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.028), rgba(255,255,255,.012)),
    rgba(4,7,15,.34);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 22px 64px rgba(0,0,0,.16);
  pointer-events:none;
}

.imr-final > *{
  position:relative;
  z-index:1;
}

.imr-final .imr-section-kicker{
  justify-content:center;
}

.imr-final .imr-h2{
  max-width:900px !important;
}

.imr-final-lead{
  max-width:760px;
  margin:18px auto 0;
  color:rgba(255,255,255,.74);
  font-size:17px;
  line-height:1.62;
  font-weight:560;
}

.imr-final-btn{
  min-width:320px;
  padding:17px 28px !important;
  margin-top:28px !important;
  box-shadow:
    0 18px 42px rgba(93,140,255,.22),
    0 8px 22px rgba(255,74,162,.12) !important;
}

@media(max-width:980px){
  .imr-proof-card{
    padding:24px 22px 22px 22px !important;
    border-radius:24px !important;
  }

  .imr-proof-icon{
    width:48px;
    height:48px;
    border-radius:16px;
    margin-bottom:14px;
  }

  .imr-proof-icon::before{
    font-size:21px;
  }

  .imr-final::before{
    inset:16px 12px;
    border-radius:22px;
  }

  .imr-final-lead{
    font-size:15px;
    max-width:640px;
  }

  .imr-final-btn{
    min-width:0;
    width:100%;
    max-width:360px;
  }
}

/* ============================================================
   104G — final micro-DA refinement
   - redesign upper hero mini-cards
   - fix lower proof cards icon/title scaling
   ============================================================ */

/* ------------------------------------------------------------
   HERO MINI-CARDS (top row under hero buttons)
   ------------------------------------------------------------ */
@media(min-width:981px){
  .imr-cinema-proof{
    margin-top:42px !important;
    max-width:980px !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:16px !important;
    border:0 !important;
    background:none !important;
    backdrop-filter:none !important;
  }

  .imr-cinema-chip{
    position:relative;
    min-height:132px !important;
    border-radius:24px !important;
    border:1px solid rgba(255,255,255,.09) !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.012)),
      linear-gradient(135deg, rgba(93,140,255,.04), rgba(255,74,162,.03)),
      rgba(4,7,15,.90) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.04),
      0 18px 42px rgba(0,0,0,.18) !important;
    padding:22px 22px 22px 90px !important;
    overflow:hidden;
  }

  .imr-cinema-chip::before{
    content:"";
    position:absolute;
    left:22px;
    top:22px;
    width:48px;
    height:48px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.08);
    background:
      linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01)),
      rgba(0,0,0,.55);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.04),
      0 10px 24px rgba(0,0,0,.22);
  }

  .imr-cinema-chip::after{
    position:absolute;
    left:36px;
    top:33px;
    font-size:18px;
    font-weight:900;
    line-height:1;
    background:linear-gradient(135deg, var(--blue), var(--pink));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
  }

  .imr-cinema-chip:nth-child(1)::after{content:"✦";}
  .imr-cinema-chip:nth-child(2)::after{content:"◎";}
  .imr-cinema-chip:nth-child(3)::after{content:"◈";}

  .imr-cinema-chip strong{
    font-size:17px !important;
    line-height:1.1 !important;
    letter-spacing:-.018em;
    margin-bottom:8px !important;
  }

  .imr-cinema-chip{
    font-size:14px !important;
    line-height:1.5 !important;
  }
}

@media(max-width:980px){
  .imr-cinema-proof{
    gap:12px !important;
  }

  .imr-cinema-chip{
    position:relative;
    border-radius:20px !important;
    padding:18px 18px 18px 72px !important;
    min-height:96px !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,.028), rgba(255,255,255,.01)),
      rgba(4,7,15,.86) !important;
    border:1px solid rgba(255,255,255,.08) !important;
  }

  .imr-cinema-chip::before{
    content:"";
    position:absolute;
    left:18px;
    top:18px;
    width:40px;
    height:40px;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(0,0,0,.45);
  }

  .imr-cinema-chip::after{
    position:absolute;
    left:31px;
    top:28px;
    font-size:15px;
    font-weight:900;
    background:linear-gradient(135deg, var(--blue), var(--pink));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
  }

  .imr-cinema-chip:nth-child(1)::after{content:"✦";}
  .imr-cinema-chip:nth-child(2)::after{content:"◎";}
  .imr-cinema-chip:nth-child(3)::after{content:"◈";}
}

/* ------------------------------------------------------------
   LOWER PROOF CARDS — better scaling
   ------------------------------------------------------------ */
.imr-proof-card{
  padding:24px 24px 22px 24px !important;
}

.imr-proof-icon{
  width:42px !important;
  height:42px !important;
  border-radius:14px !important;
  margin-bottom:14px !important;
}

.imr-proof-icon::before{
  font-size:18px !important;
}

.imr-proof-card strong{
  display:block;
  margin-bottom:8px !important;
  letter-spacing:-.02em !important;
}

/* first two cards are numeric metrics */
.imr-proof-card:nth-child(1) strong,
.imr-proof-card:nth-child(2) strong{
  font-size:42px !important;
  line-height:.95 !important;
  font-weight:900 !important;
}

/* last two cards are labels */
.imr-proof-card:nth-child(3) strong,
.imr-proof-card:nth-child(4) strong{
  font-size:18px !important;
  line-height:1.08 !important;
  font-weight:850 !important;
}

.imr-proof-card span{
  font-size:14px !important;
  line-height:1.48 !important;
  color:rgba(255,255,255,.74) !important;
}

@media(max-width:980px){
  .imr-proof-card:nth-child(1) strong,
  .imr-proof-card:nth-child(2) strong{
    font-size:34px !important;
  }

  .imr-proof-card:nth-child(3) strong,
  .imr-proof-card:nth-child(4) strong{
    font-size:17px !important;
  }

  .imr-proof-card{
    padding:22px 20px 20px 20px !important;
  }
}

/* ============================================================
   104H — final production polish
   - enlarge top useful icons
   - remove useless lower proof row
   ============================================================ */

/* Kill the useless lower proof row entirely */
.imr-proof{
  display:none !important;
}

/* If the panel only hosted that row, collapse it cleanly */
.imr-panel.imr-proof-panel,
.imr-panel[data-imr-proof="1"]{
  display:none !important;
}

/* Desktop: top row cards with properly scaled icons */
@media(min-width:981px){
  .imr-cinema-proof{
    margin-top:42px !important;
    max-width:980px !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
  }

  .imr-cinema-chip{
    position:relative;
    min-height:140px !important;
    border-radius:26px !important;
    padding:24px 24px 24px 98px !important;
  }

  .imr-cinema-chip::before{
    width:56px !important;
    height:56px !important;
    left:24px !important;
    top:24px !important;
    border-radius:18px !important;
  }

  .imr-cinema-chip::after{
    left:42px !important;
    top:41px !important;
    font-size:21px !important;
    line-height:1 !important;
  }

  .imr-cinema-chip strong{
    font-size:18px !important;
    line-height:1.1 !important;
    margin-bottom:8px !important;
  }

  .imr-cinema-chip{
    font-size:15px !important;
    line-height:1.5 !important;
  }
}

/* Mobile/tablet scaling */
@media(max-width:980px){
  .imr-cinema-chip{
    min-height:102px !important;
    padding:18px 18px 18px 78px !important;
  }

  .imr-cinema-chip::before{
    width:44px !important;
    height:44px !important;
    left:18px !important;
    top:18px !important;
    border-radius:15px !important;
  }

  .imr-cinema-chip::after{
    left:33px !important;
    top:31px !important;
    font-size:17px !important;
  }

  .imr-cinema-chip strong{
    font-size:16px !important;
  }

  .imr-cinema-chip{
    font-size:14px !important;
  }
}

/* 107C — patch depuis 104H validée, non destructif */
.imr-cinema-proof{
  display:none !important;
}

#cas > .imr-section-head{
  display:none !important;
}

#cas{
  padding-top:58px !important;
}

@media(min-width:981px){
  #cas{
    padding-top:74px !important;
  }
}
