/* SEO Montreal - feuille de la refonte 2026-09.
   Tout est encapsule sous .smio-v2 : rien ne peut renverser le theme.
   Source unique. Ne pas recopier dans les blocs Elementor. */
.smio-v2{
  color-scheme:light;
  --paper:#F2F0EA; --ink:#15161A; --ink2:#43454D; --muted:#7B7D86;
  --line:#E1DED5; --line2:#CFCBC0; --sand:#E6E1D3; --hero:#E9E6DE;
  --butter:#F3D56E; --butter-t:#F7ECC4; --good:#2E8B57;
  --node:6px; --over:40px; --pad:clamp(22px,3vw,40px);
  --gap:clamp(88px,9vw,130px);
  --sec:calc(var(--over) + var(--gap) / 2);
  --dk:#16171B; --dk-txt:#F7F5EF; --dk-body:#A8A79F; --dk-line:rgba(242,240,234,.18);
}
/* Remise a zero, specificite neutralisee par :where() pour que les
   composants gagnent toujours. */
body.smio-v2{background:var(--paper)}
.smio-v2 .smio-s,.smio-v2 .smio-s *,.smio-v2 .smio-s *::before,.smio-v2 .smio-s *::after{box-sizing:border-box}
.smio-v2 .smio-s{font-family:'Onest','Aspekta',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.5;font-size:16px}
.smio-v2 .smio-s :where(h1,h2,h3,h4,h5,p,ul,ol,li,figure,blockquote){font-family:inherit;margin:0;padding:0;text-transform:none;letter-spacing:normal;color:inherit}
.smio-v2 .smio-s :where(h1,h2,h3,h4,h5){font-weight:600;color:var(--ink);line-height:1.1}
.smio-v2 .smio-s :where(ul,ol){list-style:none}
.smio-v2 .smio-s :where(a){text-decoration:none;color:inherit}
.smio-v2 .smio-s :where(img){max-width:100%;height:auto;display:block}
.smio-v2 .smio-s :where(strong){font-weight:600;color:var(--ink)}
.smio-v2 .smio-s :where(em){font-style:normal}
.smio-v2 .smio-s [hidden]{display:none!important}
.smio-v2 .smio-s :where(input,button,textarea,select){font-family:inherit;margin:0}
.smio-v2 .smio-s :where(button,button:hover,button:focus,button:active){white-space:normal;letter-spacing:normal;text-transform:none;line-height:inherit;border-radius:0;box-shadow:none;background:none;border:0;padding:0;margin:0;color:inherit;font-size:inherit;font-weight:inherit;cursor:pointer;text-decoration:none;outline:none;transform:none;min-height:0;min-width:0}
.smio-v2 .smio-s button:focus-visible{outline:2px solid var(--butter);outline-offset:4px}
.smio-v2 .smio-s :where(svg){display:inline-block;vertical-align:middle}
.smio-v2 .elementor-widget-html>.elementor-widget-container{padding:0;margin:0}
.smio-v2 .wrap{max-width:1100px;margin:0 auto;position:relative;z-index:1}
.smio-v2 .ruled{position:relative}
.smio-v2 .ruled::before,.smio-v2 .ruled::after{content:"";position:absolute;top:calc(var(--over) * -1);bottom:calc(var(--over) * -1);width:1px;background:var(--rl,var(--line2))}
.smio-v2 .ruled::before{left:0}
.smio-v2 .ruled::after{right:0}
.smio-v2 .node{position:absolute;width:var(--node);height:var(--node);background:var(--nd,var(--ink));z-index:4}
.smio-v2 .node.tl{left:calc(var(--node)/-2);top:calc((var(--over) + var(--node)/2) * -1)}
.smio-v2 .node.tr{right:calc(var(--node)/-2);top:calc((var(--over) + var(--node)/2) * -1)}
.smio-v2 .node.bl{left:calc(var(--node)/-2);bottom:calc((var(--over) + var(--node)/2) * -1)}
.smio-v2 .node.br{right:calc(var(--node)/-2);bottom:calc((var(--over) + var(--node)/2) * -1)}
.smio-v2 .plain{padding-block:calc(var(--sec) - var(--over))!important}
.smio-v2 .boxed{border-left:1px solid var(--line2);border-right:1px solid var(--line2)}
.smio-v2 .sq{display:inline-block;width:.30em;height:.30em;margin-left:.16em;vertical-align:baseline;
  background:conic-gradient(#CBBDF2 0 25%,#A9CBE4 0 50%,#F2B79A 0 75%,#F3D56E 0)}
.smio-v2 .chip{display:inline-block;width:9px;height:9px;flex:none;background:var(--butter)}
.smio-v2 .chip.c2{background:#CBBDF2}
.smio-v2 .chip.c3{background:#A9CBE4}
.smio-v2 .chip.c4{background:#AFCB9B}
.smio-v2 .chip.c5{background:#F2B79A}
.smio-v2 .tnum{font-variant-numeric:tabular-nums}
.smio-v2 .u{background:linear-gradient(transparent 62%,var(--butter) 62%,var(--butter) 92%,transparent 92%)}
.smio-v2 .eyebrow{font-size:12.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:0}
.smio-v2 .sector{display:inline-flex;align-items:center;gap:9px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--ink2)}
.smio-v2 .idx{font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.06em}
.smio-v2 .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 26px;border-radius:999px;
  background:var(--ink);color:#fff;font-weight:600;font-size:16px;line-height:1;white-space:nowrap;transition:transform .15s,background .15s}
.smio-v2 .btn:hover{background:#000;transform:translateY(-1px)}
.smio-v2 .btn .arr{display:inline-block;transition:transform .2s}
.smio-v2 .btn:hover .arr{transform:translateX(3px)}
.smio-v2 .btn.light{background:var(--paper);color:var(--ink)}
.smio-v2 .btn.light:hover{background:#fff}
.smio-v2 .proof{font-size:14px;color:var(--ink2);font-weight:500;margin:0}
.smio-v2 .proof::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--good);margin:0 8px 1px 0;vertical-align:middle}
.smio-v2 .form{display:flex;align-items:center;gap:6px;margin:0 auto;padding:6px 6px 6px 20px;width:min(100%,640px);
  background:#fff;border:1px solid var(--line2);border-radius:999px;box-shadow:0 14px 36px -18px rgba(21,22,26,.35)}
.smio-v2 .form:focus-within{border-color:var(--ink)}
.smio-v2 .form svg{width:18px;height:18px;flex:none;color:var(--muted)}
.smio-v2 .form input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:inherit;font-size:16px;color:var(--ink);padding:12px 10px}
.smio-v2 .form input::placeholder{color:#9A9CA5}
.smio-v2 .form .btn{flex:none;height:48px;padding:0 22px;font-size:15.5px}
@media (max-width:640px){.smio-v2 .form{flex-wrap:wrap;border-radius:20px;padding:10px}.smio-v2 .form svg{display:none}.smio-v2 .form input{flex:1 1 100%;padding:10px 6px}.smio-v2 .form .btn{width:100%}}
.smio-v2 .head{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:start;
  padding:0 var(--pad);margin-bottom:56px}
.smio-v2 .head h2{margin:0;font-size:clamp(30px,3.6vw,44px);letter-spacing:-.035em;line-height:1.06;font-weight:600;color:var(--h2c,var(--ink));text-wrap:balance}
.smio-v2 .head .lede{margin:8px 0 0;font-size:17px;line-height:1.6;max-width:44ch;color:var(--ldc,var(--ink2))}
@media (max-width:860px){.smio-v2 .head{grid-template-columns:1fr;gap:14px;margin-bottom:44px}.smio-v2 .head .lede{margin-top:0}}
.smio-v2 .hero{padding:calc(var(--sec) + 44px) clamp(16px,4vw,48px) var(--sec);overflow-x:clip}
.smio-v2 .hero .stage{position:relative;padding:64px 0 0;text-align:center}
.smio-v2 .hero .stage>.z{position:relative;z-index:3;padding-inline:var(--pad)}
.smio-v2 .hero h1{font-size:clamp(30px,3.8vw,46px);letter-spacing:-.04em;line-height:1.1;max-width:880px;margin:14px auto 0;text-wrap:balance;font-weight:600}
.smio-v2 .hero .sub{margin:18px auto 0;font-size:clamp(17px,1.5vw,20px);line-height:1.5;color:var(--ink2);max-width:54ch}
.smio-v2 .hero .cta{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:28px}
.smio-v2 .cells{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.smio-v2 .cells .g{position:absolute;inset:0;opacity:.55;
  background-image:repeating-linear-gradient(to right,var(--line) 0 1px,transparent 1px 25%),repeating-linear-gradient(to bottom,var(--line) 0 1px,transparent 1px 132px);
  -webkit-mask-image:radial-gradient(120% 100% at 50% 40%,#000 25%,transparent 78%);
  mask-image:radial-gradient(120% 100% at 50% 40%,#000 25%,transparent 78%)}
.smio-v2 .cells i{position:absolute;display:block;background:var(--hero);opacity:.75}
.smio-v2 .pins{position:absolute;left:0;right:0;top:0;bottom:calc(clamp(200px,19vw,300px) + 52px);z-index:2;pointer-events:none}
.smio-v2 .pin{position:absolute;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;padding:7px 11px;white-space:nowrap;
  animation:pinDrift var(--fd,9s) ease-in-out infinite;animation-delay:calc(var(--d,0s) + .6s);will-change:transform}
.smio-v2 .pin>span{display:block;animation:pinIn .5s cubic-bezier(.2,.75,.3,1) both;animation-delay:var(--d,0s)}
.smio-v2 .pin.dark{background:var(--ink);color:#fff}
.smio-v2 .pin.light{background:#fff;color:var(--ink2);border:1px solid var(--line2)}
.smio-v2 .pin.butter{background:var(--butter);color:var(--ink)}
@keyframes pinIn{from{opacity:0;transform:translate3d(0,9px,0) scale(.94)}to{opacity:1;transform:none}}
@keyframes pinDrift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(var(--fx,2px),var(--fy,-6px),0)}}
@media (prefers-reduced-motion:reduce){.smio-v2 .pin{animation:none}.smio-v2 .pin>span{animation:none;opacity:1;transform:none}}
@media (max-width:1040px){.smio-v2 .pins{display:none}}
.smio-v2 .ph{position:relative;overflow:hidden;isolation:isolate;background:var(--sand);border-radius:22px;height:clamp(200px,19vw,300px);margin-top:52px}
.smio-v2 .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;transform:scale(1.05);filter:saturate(.78) contrast(1.02) brightness(1.02)}
.smio-v2 .ph .tint{position:absolute;inset:0;z-index:1;mix-blend-mode:soft-light;opacity:.55;background:linear-gradient(115deg,#CBBDF2 0%,#A9CBE4 35%,#F3D56E 70%,#F2B79A 100%)}
.smio-v2 .ph .vig{position:absolute;inset:0;z-index:1;background:radial-gradient(120% 90% at 50% 45%,rgba(21,22,26,0) 55%,rgba(21,22,26,.22) 100%)}
.smio-v2 .grainy::after{content:"";position:absolute;inset:-20%;z-index:1;pointer-events:none;mix-blend-mode:overlay;opacity:.3;background-size:200px 200px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}
.smio-v2 .press{padding:30px var(--pad) 34px;border-top:1px solid var(--line2);display:flex;align-items:center;gap:32px}
.smio-v2 .boxlbl{flex:none;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line2);padding:9px 14px;background:var(--paper);
  font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;font-weight:600;color:var(--ink2)}
.smio-v2 .boxlbl .sq{width:5px;height:5px;background:var(--ink)}
.smio-v2 .track{flex:1;min-width:0;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.smio-v2 .track ul{display:flex;align-items:center;gap:54px;list-style:none;margin:0;padding:0;width:max-content;animation:slide 26s linear infinite}
.smio-v2 .track li{flex:none;display:flex;align-items:center}
.smio-v2 .wm{font-size:15px;font-weight:700;letter-spacing:-.02em;color:var(--ink);opacity:.55;white-space:nowrap}
.smio-v2 .track li:hover .wm{opacity:.85}
@keyframes slide{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.smio-v2 .track ul{animation:none}}
@media (max-width:760px){.smio-v2 .press{flex-direction:column;align-items:flex-start;gap:18px}.smio-v2 .track{width:100%}}
.smio-v2 .cases{padding:var(--sec) clamp(16px,4vw,48px);overflow-x:clip}
.smio-v2 .bar-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 var(--pad) 16px;border-bottom:1px solid var(--line2)}
.smio-v2 .count{display:inline-flex;align-items:baseline;gap:10px;font-weight:600;letter-spacing:.05em;line-height:1}
.smio-v2 .count b{font-size:15px;color:var(--ink)}
.smio-v2 .count i{font-style:normal;font-weight:400;font-size:14px;color:var(--line2)}
.smio-v2 .count .tot{font-size:14px;color:var(--muted)}
.smio-v2 .nav{display:flex;gap:6px}
.smio-v2 .nav button{width:38px;height:38px;border:1px solid var(--line2);background:var(--paper);cursor:pointer;position:relative;transition:background .15s,border-color .15s,opacity .15s}
.smio-v2 .nav button:hover:not(:disabled){background:var(--ink);border-color:var(--ink)}
.smio-v2 .nav button:hover:not(:disabled)::before{background:#fff}
.smio-v2 .nav button:hover:not(:disabled)::after{border-color:#fff}
.smio-v2 .nav button:focus-visible{outline:2px solid var(--butter);outline-offset:2px}
.smio-v2 .nav button:disabled{opacity:.3;cursor:default}
.smio-v2 .nav button::before{content:"";position:absolute;left:50%;top:50%;width:11px;height:1.5px;background:var(--ink);transform:translate(-50%,-50%)}
.smio-v2 .nav button::after{content:"";position:absolute;left:50%;top:50%;width:7px;height:7px;border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);transform:translate(-50%,-50%) rotate(-45deg)}.smio-v2 .nav .prev::after{transform:translate(-50%,-50%) rotate(135deg);margin-left:1px}
.smio-v2 .nav .next::after{margin-left:-1px}
.smio-v2 .rail{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;border-bottom:1px solid var(--line2)}
.smio-v2 .rail::-webkit-scrollbar{display:none}
.smio-v2 .rail.drag{cursor:grabbing;scroll-snap-type:none;user-select:none}
.smio-v2 .slide{flex:0 0 clamp(300px,54vw,620px);scroll-snap-align:start;border-right:1px solid var(--line2);padding:24px var(--pad) 26px;display:flex;flex-direction:column;gap:16px}
.smio-v2 .slide:last-child{border-right:0}
.smio-v2 .slide .top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.smio-v2 .win{background:#fff;border:1px solid rgba(21,22,26,.08);overflow:hidden;box-shadow:0 20px 46px -32px rgba(21,22,26,.42)}
.smio-v2 .win .tb{display:flex;align-items:center;gap:6px;padding:9px 13px;border-bottom:1px solid var(--line)}
.smio-v2 .win .tb i{width:9px;height:9px;border-radius:50%;background:var(--line2);display:block}
.smio-v2 .win .tb span{margin-left:8px;font-size:11.5px;color:var(--muted);font-weight:500}
.smio-v2 .win img{width:100%;height:auto}
.smio-v2 .slide .foot{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.smio-v2 .slide .v{font-size:clamp(30px,3.4vw,44px);font-weight:600;letter-spacing:-.05em;line-height:.9;display:block}
.smio-v2 .slide .l{font-size:12.5px;color:var(--muted);display:block;margin-top:8px}
.smio-v2 .slide .k{font-size:13.5px;color:var(--ink2);text-align:right;line-height:1.4;white-space:nowrap}
.smio-v2 .prog{position:relative;height:2px;background:var(--line)}
.smio-v2 .prog i{position:absolute;left:0;top:0;bottom:0;background:var(--ink);width:20%;transition:width .18s linear,transform .18s linear;transform-origin:left}
@media (prefers-reduced-motion:reduce){.smio-v2 .prog i{transition:none}}
.smio-v2 .svc{background:var(--dk);color:var(--dk-body);padding:var(--sec) clamp(16px,4vw,48px);position:relative;overflow:hidden;
  --rl:var(--dk-line);--nd:var(--butter);--h2c:var(--dk-txt);--ldc:var(--dk-body)}
.smio-v2 .svc::after{content:"";position:absolute;inset:-20%;pointer-events:none;opacity:.5;mix-blend-mode:overlay;background-size:200px 200px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}
.smio-v2 .svc .rows{border-top:1px solid var(--dk-line)}
.smio-v2 .svc .r{display:grid;grid-template-columns:76px minmax(0,1fr) minmax(0,1.3fr);gap:0 40px;align-items:start;
  padding:30px var(--pad);border-bottom:1px solid var(--dk-line);transition:background .2s}
.smio-v2 .svc .r:hover{background:rgba(242,240,234,.035)}
.smio-v2 .svc .num{font-size:30px;line-height:.9;letter-spacing:-.05em;font-weight:600;color:var(--butter);font-variant-numeric:tabular-nums;opacity:.85}
.smio-v2 .svc h3{margin:0;font-size:clamp(19px,2vw,23px);font-weight:600;letter-spacing:-.028em;line-height:1.16;color:var(--dk-txt);text-wrap:balance}
.smio-v2 .svc p{margin:0;font-size:15px;line-height:1.66;color:var(--dk-body)}
.smio-v2 .svc a{color:var(--dk-txt);border-bottom:1px solid rgba(242,240,234,.38)}
.smio-v2 .svc a:hover{border-color:var(--butter)}
@media (max-width:860px){.smio-v2 .svc .r{grid-template-columns:50px minmax(0,1fr);gap:10px 18px}.smio-v2 .svc p{grid-column:2/3}}
.smio-v2 .ctaph{padding:var(--sec) clamp(16px,4vw,48px)}
.smio-v2 .ctaph .frame{position:relative;overflow:hidden;min-height:clamp(320px,34vw,440px);display:flex;align-items:center}
.smio-v2 .shotbg{position:absolute;inset:0;background:
  radial-gradient(90% 120% at 18% 12%,#3A4150 0%,rgba(58,65,80,0) 58%),
  radial-gradient(70% 90% at 82% 78%,#2B3340 0%,rgba(43,51,64,0) 62%),
  linear-gradient(160deg,#1B2028 0%,#11141A 62%,#0C0E12 100%)}
.smio-v2 .ctaph .scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(12,14,18,.88) 0%,rgba(12,14,18,.72) 42%,rgba(12,14,18,.28) 100%)}
.smio-v2 .imgtag{position:absolute;right:14px;bottom:14px;z-index:5;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  color:rgba(247,245,239,.62);border:1px solid rgba(247,245,239,.26);padding:5px 9px}
.smio-v2 .ctaph .c{position:relative;z-index:2;padding:clamp(34px,5vw,62px) var(--pad);max-width:620px}
/* Les bandes sombres heritent la couleur du texte : sinon le strong repasse en encre. */
.smio-v2 section.ctaph strong,.smio-v2 section.ctaink strong{color:inherit;font-weight:600}
.smio-v2 .ctaph h2{margin:0;font-size:clamp(28px,3.6vw,44px);letter-spacing:-.04em;line-height:1.06;font-weight:600;color:#F7F5EF;text-wrap:balance}
.smio-v2 .ctaph p{margin:18px 0 0;font-size:16.5px;line-height:1.6;color:#C6C5BE;max-width:46ch}
.smio-v2 .ctaph .acts{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;margin-top:28px}
.smio-v2 .ctaph .proof{color:#C6C5BE}
.smio-v2 .art{padding:var(--sec) clamp(16px,4vw,48px)}
.smio-v2 .ahead{padding:0 var(--pad) 34px}
.smio-v2 .stamp{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--ink2);background:#fff;border:1px solid var(--line2);padding:7px 12px}
.smio-v2 .stamp i{width:7px;height:7px;background:var(--good);flex:none}
.smio-v2 .ahead h2{margin:18px 0 12px;font-size:clamp(28px,3.4vw,42px);letter-spacing:-.04em;line-height:1.06;font-weight:600;max-width:24ch;text-wrap:balance}
.smio-v2 .meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13.5px;color:var(--muted);font-weight:500;margin:0}
.smio-v2 .meta i{font-style:normal;color:var(--line2)}
.smio-v2 .art .grid{display:grid;grid-template-columns:230px minmax(0,1fr);align-items:start}
.smio-v2 .art .col{padding:var(--pad)}
.smio-v2 .art .mid{border-left:1px solid var(--line2);max-width:78ch}
.smio-v2 .art .toc{position:sticky;top:96px}
.smio-v2 .toc .lbl{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--muted);margin:0 0 4px;padding:0 0 12px;border-bottom:1px solid var(--line2)}
.smio-v2 .toc ol{list-style:none;margin:0;padding:0}
.smio-v2 .toc li a{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.4;color:var(--ink2);padding:10px 0;border-bottom:1px solid var(--line)}
.smio-v2 .toc li:last-child a{border-bottom:0}
.smio-v2 .toc li a::before{content:"";width:6px;height:6px;flex:none;margin-top:6px;background:var(--line2);transition:background .15s}
.smio-v2 .toc li a:hover{color:var(--ink)}
.smio-v2 .toc li a:hover::before{background:var(--ink2)}
.smio-v2 .toc li a.on{color:var(--ink);font-weight:600}
.smio-v2 .toc li a.on::before{background:var(--butter)}
.smio-v2 .prose p{font-size:17px;line-height:1.72;color:var(--ink2);margin:0 0 18px}
.smio-v2 .prose>p:first-child{margin-top:0}
.smio-v2 .prose a{border-bottom:1px solid var(--line2)}
.smio-v2 .prose a:hover{border-color:var(--ink)}
.smio-v2 .prose h2{margin:46px 0 16px;font-size:clamp(23px,2.2vw,28px);letter-spacing:-.03em;line-height:1.16;font-weight:600;
  display:flex;align-items:center;gap:16px;text-wrap:balance;scroll-margin-top:100px}
.smio-v2 .prose h2::after{content:"";flex:1;height:1px;background:var(--line2);min-width:24px}
.smio-v2 .prose h3{margin:30px 0 10px;font-size:clamp(18px,1.8vw,21px);letter-spacing:-.02em;line-height:1.22;font-weight:600;scroll-margin-top:100px}
@media (max-width:820px){.smio-v2 .art .grid{grid-template-columns:1fr}.smio-v2 .art .mid{border-left:0;border-top:1px solid var(--line2)}.smio-v2 .art .toc{position:static}}
.smio-v2 .faqsec{padding:var(--sec) clamp(16px,4vw,48px)}
.smio-v2 .faqsec .in{padding:0 var(--pad)}
.smio-v2 .faqsec h2{margin:0;font-size:clamp(30px,3.6vw,44px);letter-spacing:-.035em;line-height:1.06;font-weight:600;max-width:20ch;text-wrap:balance}
.smio-v2 .faqsec .lede{margin:14px 0 0;font-size:17px;line-height:1.6;color:var(--ink2);max-width:52ch}
.smio-v2 .faqsec .list{margin-top:48px;border-top:1px solid var(--line2)}
.smio-v2 .faqsec .q{border-bottom:1px solid var(--line2)}
.smio-v2 .faqsec button{width:100%;background:none;border:0;padding:26px 0;cursor:pointer;text-align:left;color:inherit;
  display:flex;align-items:flex-start;justify-content:space-between;gap:24px;transition:color .15s}
.smio-v2 .faqsec button:hover{color:var(--ink)}
.smio-v2 .faqsec button:focus-visible{outline:2px solid var(--butter);outline-offset:-2px}
.smio-v2 .faqsec h3{margin:0;font-size:clamp(17px,1.7vw,19px);font-weight:500;letter-spacing:-.015em;line-height:1.4;color:var(--ink);text-wrap:balance}
.smio-v2 .faqsec .pm{position:relative;width:16px;height:16px;flex:none;margin-top:5px}
.smio-v2 .faqsec .pm::before,.smio-v2 .faqsec .pm::after{content:"";position:absolute;left:50%;top:50%;background:var(--ink2);transform:translate(-50%,-50%);transition:transform .22s,background .22s}
.smio-v2 .faqsec .pm::before{width:14px;height:1.3px}
.smio-v2 .faqsec .pm::after{width:1.3px;height:14px}
.smio-v2 .faqsec .q.on .pm::after{transform:translate(-50%,-50%) scaleY(0)}
.smio-v2 .faqsec .q.on .pm::before{background:var(--ink)}
.smio-v2 .faqsec .a{display:none;padding:0 56px 28px 0;max-width:74ch}
.smio-v2 .faqsec .q.on .a{display:block}
.smio-v2 .faqsec .a p{margin:0;font-size:16.5px;line-height:1.72;color:var(--ink2)}
.smio-v2 .ctaink{background:var(--dk);color:var(--dk-body);padding:var(--sec) clamp(16px,4vw,48px);position:relative;overflow:hidden;
  --rl:var(--dk-line);--nd:var(--butter)}
.smio-v2 .ctaink::after{content:"";position:absolute;inset:-20%;pointer-events:none;opacity:.5;mix-blend-mode:overlay;background-size:200px 200px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}
.smio-v2 .ctaink .c{padding:clamp(40px,5vw,64px) var(--pad);text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px}
.smio-v2 .ctaink h2{margin:0;font-size:clamp(28px,3.5vw,42px);letter-spacing:-.045em;line-height:1.06;font-weight:600;color:var(--dk-txt);max-width:24ch;text-wrap:balance}
.smio-v2 .ctaink p.l{margin:0;font-size:17px;line-height:1.6;color:var(--dk-body);max-width:56ch}
.smio-v2 .ctaink .form{background:rgba(247,245,239,.06);border-color:rgba(247,245,239,.22);box-shadow:none;margin-top:6px}
.smio-v2 .ctaink .form:focus-within{border-color:var(--butter)}
.smio-v2 .ctaink .form svg{color:rgba(247,245,239,.5)}
.smio-v2 .ctaink .form input{color:var(--dk-txt)}
.smio-v2 .ctaink .form input::placeholder{color:rgba(247,245,239,.42)}
.smio-v2 .ctaink .proof{color:var(--dk-body)}
/* Bandes sombres pleine fenetre : le conteneur Elementor est borne,
   on sort donc de la boite. overflow-x clip sur le body de cette page
   seulement, pour qu'aucune barre horizontale n'apparaisse. */
body.smio-v2{overflow-x:clip}
.smio-v2 .bleed{margin-inline:calc(50% - 50vw);width:100vw;max-width:100vw}

/* Le cliche du CTA : cadre a droite, car le voile assombrit la gauche. */
.smio-v2 .ctaph .frame .bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% 50%;z-index:0}

/* ====================== correctifs ====================== */
/* Les logos de presse : la maquette utilisait des noms en texte,
   la vraie page a des images. Il manquait donc toutes leurs regles. */
.smio-v2 .slide .snote{margin:8px 0 0;font-size:12.5px;line-height:1.45;color:var(--muted);border-top:1px solid var(--line);padding-top:8px}
.smio-v2 .track img{display:block;width:auto;filter:brightness(0);opacity:.58;transition:opacity .2s}
.smio-v2 .track li:hover img{opacity:.9}
.smio-v2 .track .mw{height:22px}.smio-v2 .track .yh{height:36px}.smio-v2 .track .ap{height:27px}
.smio-v2 .track .hs{height:30px}.smio-v2 .track .ah{height:29px}.smio-v2 .track .sr{height:20px}
/* Le champ de saisie : le theme lui repose un fond blanc et une bordure. */
.smio-v2 .form input[type=text]{background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;border-radius:0!important;height:auto!important;min-height:0!important;padding:12px 10px!important;margin:0!important;line-height:1.3!important;color:var(--ink)!important;font-size:16px!important}
.smio-v2 .ctaink .form input[type=text]{color:var(--dk-txt)!important}
.smio-v2 .ctaink .form input::placeholder{color:rgba(247,245,239,.42)}
/* L image du hero reprend sa largeur d origine et deborde des filets. */
.smio-v2 .ph{position:relative;left:50%;transform:translateX(-50%);width:min(1480px,calc(100vw - 64px));height:clamp(220px,21vw,360px)}
.smio-v2 .pins{bottom:calc(clamp(220px,21vw,360px) + 52px)}
@media (max-width:860px){.smio-v2 .ph{width:calc(100vw - 32px);height:clamp(200px,42vw,320px)}.smio-v2 .pins{bottom:calc(clamp(200px,42vw,320px) + 52px)}}
/* FAQ : survol sobre, rien du theme. */
.smio-v2 .faqsec button{background:none!important;box-shadow:none!important;transform:none!important}
.smio-v2 .faqsec button:hover h3{color:var(--ink)}
.smio-v2 .faqsec button:hover .pm::before,.smio-v2 .faqsec button:hover .pm::after{background:var(--ink)}

/* Accordeon du hero : le texte etait perdu a la refonte, il revient
   replie pour ne pas alourdir le haut de page. */
.smio-v2 .hero .more{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink2);font-weight:600;display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid transparent;padding-bottom:2px;line-height:1.2}
.smio-v2 .hero .more:hover{color:var(--ink);border-bottom-color:var(--line2)}
.smio-v2 .hero .more::after{content:'';width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.smio-v2 .hero .more[aria-expanded='true']::after{transform:rotate(-135deg) translateY(-1px)}
.smio-v2 .hero .moreBox{margin:26px auto 0;max-width:760px;text-align:left;background:#fff;border:1px solid var(--line2);padding:24px 26px}
.smio-v2 .hero .moreBox h2{font-size:clamp(20px,2vw,24px);letter-spacing:-.025em;line-height:1.2;margin:0 0 12px}
.smio-v2 .hero .moreBox p{font-size:16.5px;line-height:1.7;color:var(--ink2);margin:0}

/* Sections sans cadre : pas de retrait lateral. Le retrait sert a ne pas
   coller le texte a un filet ; sans filet, il ne fait que decaler le
   contenu par rapport au bord du conteneur. Le carrousel garde le sien,
   lui, parce qu'il a ses bordures. */
.smio-v2 .plain .head,.smio-v2 .plain>.wrap>.in,.smio-v2 .faqsec .in{padding-inline:0}
