/* Shared HTML-first 2.5D architecture. No webfont, framework or WebGL dependency. */
body:has(.rul2-v2){background:#f4f6fb;color:#19253d}body:has(.rul2-v2) #masthead,body:has(.rul2-v2) #colophon,body:has(.rul2-v2) .entry-header,body:has(.rul2-v2) .entry-footer,body:has(.rul2-v2) .post-thumbnail,body:has(.rul2-v2) .post-navigation,body:has(.rul2-v2) .comments-area{display:none!important}body:has(.rul2-v2) .content-area{margin:0}body:has(.rul2-v2) .site-container,body:has(.rul2-v2) .content-container{max-width:none;padding:0;display:block}body:has(.rul2-v2) .entry-content-wrap{padding:0}body:has(.rul2-v2) .entry{background:transparent;box-shadow:none;border:0}body:has(.rul2-v2) .entry-content{margin:0}.entry-content>.rul2-v2{max-width:none!important}
.rul2-v2{--purple:#6830b5;--ink:#19253d;--muted:#5b6579;--line:#dce1ed;--accent:#62d5f5;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;background:#f4f6fb;color:var(--ink);isolation:isolate}.rul2-v2 *{box-sizing:border-box}.rul2-v2 h1,.rul2-v2 h2,.rul2-v2 h3,.rul2-v2 p{margin:0}.rul2-v2 h1,.rul2-v2 h2,.rul2-v2 h3{font-family:inherit;color:inherit;line-height:1.2;font-weight:750}.rul2-v2 h2{font-size:clamp(1.5rem,2.2vw,2.1rem);letter-spacing:-.03em}.rul2-v2 a{color:inherit;text-decoration:none}.rul2-v2 button,.rul2-v2 input{font:inherit}.rul2-v2 a:focus-visible,.rul2-v2 button:focus-visible,.rul2-v2 summary:focus-visible,.rul2-v2 input:focus-visible{outline:3px solid #ad79ff;outline-offset:5px}.rul2-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rul2-skip{position:absolute;top:-100px;left:20px;z-index:99;background:#fff;padding:14px}.rul2-skip:focus{top:10px}.rul2-topbar{position:relative;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px clamp(16px,3vw,48px);background:#070e1d;color:#f4f2ff;border-bottom:1px solid #443460}.rul2-wordmark{display:block;font-weight:850;font-size:clamp(1.15rem,2vw,1.7rem);letter-spacing:.03em;line-height:1.1}.rul2-wordmark>span{color:#b88de8}.rul2-wordmark>small{display:block;font-size:.48em;letter-spacing:.18em;font-weight:500;margin-top:6px}.rul2-tools{display:flex;align-items:center;gap:16px}.rul2-motion-toggle{border:1px solid #595069;background:transparent;color:inherit;border-radius:8px;min-height:44px;padding:8px 12px;cursor:pointer;font-size:.8rem}.rul2-motion-toggle:disabled{opacity:.75;cursor:default}.rul2-menu summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:12px;list-style:none}.rul2-menu summary::-webkit-details-marker{display:none}.rul2-menu nav{position:absolute;right:16px;top:calc(100% - 4px);width:min(390px,calc(100vw - 32px));padding:20px;background:#10192b;border:1px solid #595069;border-radius:12px;box-shadow:0 16px 35px #0006}.rul2-menu nav>a{display:block;padding:11px 8px;border-bottom:1px solid #ffffff17}.rul2-menu nav>a:hover{background:#302747}.rul2-menu form{margin-top:18px}.rul2-menu label{display:block;font-size:.85rem;margin-bottom:8px}.rul2-menu form>div{display:flex;gap:6px}.rul2-menu input{width:100%;min-width:0;background:#fff;border:0;border-radius:5px;padding:10px;color:#19253d}.rul2-menu button{border:0;border-radius:5px;background:#b88de8;padding:8px;color:#0d1324;cursor:pointer}
.rul2-command{position:relative;background:#0a1020;color:#fff}.rul2-desktop-scene{position:relative;width:100%;aspect-ratio:1672/941;overflow:hidden;background:radial-gradient(ellipse at 50% 65%,#3e3062,#0a1020 70%)}.rul2-scene-image{display:block;width:100%;height:auto;filter:saturate(.87) brightness(.94);margin:0}.rul2-counter{position:absolute;top:2%;right:1%;width:27%;min-height:11%;display:flex;flex-direction:column;justify-content:center;text-align:center;border:1px solid #705498;border-radius:7px;background:#181329;padding:8px 12px;color:#efebfa;box-shadow:0 0 18px #7e54b825;font-size:clamp(.55rem,1vw,1rem)}.rul2-counter-copy>span{text-transform:uppercase;letter-spacing:.14em;font-size:.7em}.rul2-counter-copy>strong{font-size:1.02em;line-height:1.4}.rul2-counter-copy>small{font-size:.7em;color:#c1b6d0}.rul2-window{position:absolute;border:1px solid transparent;border-radius:16px;display:flex;align-items:flex-end;padding:12px;transition:box-shadow .18s,border-color .18s,background-color .18s}.rul2-window>span{background:#101725ed;border:1px solid #ffffff33;padding:9px 10px;border-radius:7px;font-size:clamp(.6rem,.8vw,.88rem);font-weight:600;display:flex;align-items:center;gap:8px;width:100%}.rul2-window b{margin-left:auto;color:var(--accent);font-size:1.3em}.rul2-window:hover,.rul2-window:focus-visible{border-color:var(--accent);box-shadow:0 0 25px color-mix(in srgb,var(--accent) 35%,transparent);background:#ffffff05}.rul2-window--n5{left:13.8%;top:29.8%;width:16.7%;height:43%}.rul2-window--k1{left:31.1%;top:31.3%;width:15.5%;height:41%}.rul2-window--m2{left:47.3%;top:32%;width:15.5%;height:41%}.rul2-window--b3{left:63.7%;top:31.8%;width:16%;height:42%}.rul2-window--w4{left:80.5%;top:31.8%;width:17%;height:42%}.rul2-side-nav{position:absolute;left:.5%;top:8%;width:12.8%;height:47%;display:grid;grid-template-rows:repeat(5,1fr);gap:3px}.rul2-side-nav>a{border-radius:9px;min-height:44px}.rul2-side-nav>a:hover{background:#c3a1ff16;box-shadow:inset 0 0 0 2px #bd98ea}.rul2-scene-explore{position:absolute;left:46%;top:89%;width:27%;height:8%;border-radius:18px}.rul2-scene-explore:hover{box-shadow:0 0 20px #d1b3f766}.rul2-terminal-intro{max-width:920px;margin:0 auto;text-align:center;padding:24px 20px 12px}.rul2-terminal-intro h1{font-size:clamp(1.5rem,2.5vw,2.3rem);letter-spacing:-.035em}.rul2-terminal-intro p{color:#c4cbda;max-width:700px;margin:12px auto 0}.rul2-eyebrow{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;font-weight:700;color:var(--purple)}.rul2-terminal-intro .rul2-eyebrow{display:block;color:#bb9bdd;margin-bottom:10px}.rul2-explore{display:flex!important;align-items:center;justify-content:center;gap:24px;width:max-content;margin:8px auto 0;padding:14px 24px 25px;font-weight:600;color:#d1b3f7!important}.rul2-mobile-universes{display:none}.rul2-editorial{max-width:1240px;margin:auto;padding:8px clamp(16px,3vw,40px) 48px;scroll-margin-top:20px}.rul2-section{padding-top:52px}.rul2-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.rul2-section p{color:var(--muted);margin-top:10px}.rul2-articles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.rul2-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 6px 18px #17203c05;transition:box-shadow .18s,transform .18s}.rul2-card:hover{box-shadow:0 10px 24px #35225618;transform:translateY(-3px)}.rul2-card-link{display:block;height:100%}.rul2-card-image{aspect-ratio:16/9;background:#dbe3f3;overflow:hidden}.rul2-card-image img{width:100%;height:100%;object-fit:cover;display:block}.rul2-card-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at 60% 90%,#3e3062,#13213b);color:#c8a8ee;font-size:2.6rem;font-weight:800;letter-spacing:.1em}.rul2-card-placeholder>span{font-size:.6rem;letter-spacing:.24em}.rul2-card-body{padding:18px}.rul2-card h3{font-size:1.1rem;margin-top:9px}.rul2-card p{font-size:.9rem;line-height:1.55}.rul2-card-meta{display:block;font-size:.72rem;color:#697388;margin-top:16px}.rul2-card--compact h3{font-size:1rem}#rul2-latest .rul2-articles{grid-template-columns:repeat(3,minmax(0,1fr))}.rul2-universe-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:24px}.rul2-universe-grid>a{position:relative;display:flex;flex-direction:column;gap:7px;background:#101a2c;color:#fff;border-radius:12px;border-top:3px solid var(--accent);padding:24px 18px;min-height:150px}.rul2-universe-grid strong{font-size:1.6rem;color:var(--accent)}.rul2-universe-grid span{font-size:.8rem;line-height:1.5}.rul2-universe-grid b{position:absolute;right:15px;top:15px;color:var(--accent)}.rul2-brief{margin-top:52px;background:linear-gradient(120deg,#17162d,#35254e);color:#fff;border-radius:18px;padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.rul2-brief .rul2-eyebrow{color:#c3a1ee}.rul2-brief h2{margin-top:8px}.rul2-brief p{color:#d8d1e4;margin-top:10px}.rul2-brief a{display:inline-block;margin-top:10px;text-decoration:underline;text-underline-offset:5px}.rul2-coming{font-size:.9rem}.rul2-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}.rul2-video{display:flex;flex-direction:column;gap:12px;justify-content:center;align-items:center;text-align:center;min-height:210px;padding:25px;background:linear-gradient(135deg,#101a2c,#35254e);color:#fff!important;border-radius:14px}.rul2-video>span{font-size:2rem;color:#c3a1ee}.rul2-video>small{color:#d8d1e4}.rul2-video--soon{grid-column:1/-1}.rul2-return{display:block;width:max-content;max-width:100%;text-align:center;margin:40px auto 0;border:1px solid #c3b5d6;border-radius:30px;padding:12px 24px;color:var(--purple)!important;font-weight:600}.rul2-footer{padding:40px max(20px,calc((100% - 1160px)/2));background:#0b1423;color:#d8deeb}.rul2-footer p{font-size:.9rem;margin-top:12px}.rul2-footer nav{display:flex;flex-wrap:wrap;gap:12px 24px;margin:24px 0}.rul2-footer nav a{font-size:.85rem;padding:8px 0;text-decoration:underline;text-underline-offset:4px}.rul2-footer small{color:#a4adc0}.rul2-light *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rul2-light .rul2-card:hover{transform:none}.rul2-image-failed .rul2-desktop-scene{display:none}.rul2-image-failed .rul2-mobile-universes{display:grid;max-width:800px;margin:auto;padding:20px;gap:12px}.rul2-terminal-card{display:flex;align-items:center;gap:18px;min-height:96px;background:#152039;border:1px solid #ffffff25;border-left:3px solid var(--accent);border-radius:12px;padding:18px;color:#f8f7ff}.rul2-terminal-card>span:nth-child(2){display:flex;flex-direction:column;gap:4px}.rul2-terminal-card strong{color:var(--accent);font-size:1.3rem}.rul2-terminal-card b{margin-left:auto;color:var(--accent);font-size:1.4rem}.rul2-image-failed .rul2-terminal-art{display:none}
/* Category rooms share cards, loaders-free fallback, navigation and motion controls. */
.rul2-category-room{position:relative;aspect-ratio:1672/855;overflow:hidden;background:#0b1527}.rul2-category-room>.rul2-scene-image{margin-top:-5.15%}.rul2-room-panel{position:absolute;left:46.5%;right:1%;top:19%;bottom:21%;padding:18px;background:linear-gradient(130deg,#081728,#0c2740);border:2px solid var(--accent);border-radius:20px;box-shadow:0 0 12px #64cdf430;color:#fff;overflow:auto}.rul2-room-panel h2{font-size:clamp(1rem,1.7vw,1.8rem);margin-bottom:12px}.rul2-room-panel .rul2-articles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.rul2-room-panel .rul2-card{background:#101d32;border-color:#4984a7;color:#fff}.rul2-room-panel .rul2-card-body{padding:12px}.rul2-room-panel .rul2-card h3{font-size:clamp(.75rem,1.1vw,1.15rem)}.rul2-room-panel .rul2-card-meta{color:#becddd;font-size:.65rem}.rul2-room-panel .rul2-eyebrow{color:var(--accent);font-size:.6rem}.rul2-room-explore{position:absolute;left:36%;width:29%;bottom:4%;min-height:44px;border-radius:30px;padding:10px;text-align:center;background:#251344;color:#f8f5ff!important;border:1px solid #b68ceb;box-shadow:0 0 12px #8e4ec866;font-weight:650}.rul2-category--k1{--accent:#ed7984}.rul2-category--k1 .rul2-room-explore{left:40%;width:21%}.rul2-category-mobile-art{display:none}.rul2-category--n5 .rul2-terminal-intro .rul2-eyebrow{color:#8cd9ee}.rul2-category--k1 .rul2-terminal-intro .rul2-eyebrow{color:#f4a0ac}.rul2-archive-link{display:inline-flex;align-items:center;min-height:44px;margin-top:20px;color:var(--purple)!important;text-decoration:underline!important;text-underline-offset:4px}.rul2-empty{padding:25px;border:1px solid #405271;border-radius:12px;color:#d7e4f1}
@media(min-width:1600px){.rul2-desktop-scene,.rul2-category-room{max-width:1800px;margin:auto}}
@media(max-width:1100px){.rul2-articles{grid-template-columns:repeat(2,minmax(0,1fr))}.rul2-universe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rul2-window{padding:5px}.rul2-window>span{font-size:.65rem;padding:6px}.rul2-room-panel{padding:12px}.rul2-room-panel .rul2-card-meta,.rul2-room-panel .rul2-eyebrow{display:none}.rul2-room-panel .rul2-card-body{padding:8px}.rul2-room-explore{font-size:.8rem}}
@media(max-width:767px){.rul2-topbar{padding:12px 16px}.rul2-wordmark{font-size:1.1rem}.rul2-wordmark>small{font-size:.4em}.rul2-tools{gap:10px}.rul2-motion-toggle{font-size:.65rem;padding:6px 8px}.rul2-menu summary{font-size:.8rem;gap:6px}.rul2-desktop-scene{display:none}.rul2-terminal-intro{text-align:left;padding:30px 20px 18px}.rul2-terminal-intro h1{font-size:1.85rem;max-width:470px}.rul2-terminal-intro p{font-size:.95rem;margin:12px 0 0}.rul2-mobile-universes{display:grid;gap:12px;padding:0 16px 8px}.rul2-terminal-card{padding:12px;gap:14px;min-height:108px;box-shadow:0 8px 24px #0002}.rul2-terminal-card>span:nth-child(2)>span{font-size:.85rem}.rul2-terminal-card:active{background:#263352}.rul2-terminal-art{flex:0 0 78px;width:78px;height:82px;border-radius:8px;background-image:url(robotuplink-commandement-v2.webp);background-size:570px auto;background-repeat:no-repeat;filter:saturate(.88)}.rul2-terminal--n5 .rul2-terminal-art{background-position:-73px -106px}.rul2-terminal--k1 .rul2-terminal-art{background-position:-171px -106px}.rul2-terminal--m2 .rul2-terminal-art{background-position:-266px -106px}.rul2-terminal--b3 .rul2-terminal-art{background-position:-365px -106px}.rul2-terminal--w4 .rul2-terminal-art{background-position:-468px -106px}.rul2-explore{padding-bottom:25px}.rul2-editorial{padding:0 16px 36px}.rul2-section{padding-top:36px}.rul2-section-heading{margin-bottom:18px}.rul2-section p{font-size:.9rem}.rul2-articles,#rul2-latest .rul2-articles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rul2-card-body{padding:14px}.rul2-card h3,.rul2-card--compact h3{font-size:.95rem}.rul2-card p{display:none}.rul2-card-meta{font-size:.65rem}.rul2-eyebrow{font-size:.6rem}.rul2-universe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.rul2-universe-grid>a{min-height:135px;padding:18px 14px}.rul2-universe-grid>a:last-child{grid-column:1/-1;min-height:100px}.rul2-brief{grid-template-columns:1fr;gap:18px;padding:24px;margin-top:36px}.rul2-video-grid{grid-template-columns:1fr}.rul2-footer{padding:30px 20px}.rul2-category-room{display:none}.rul2-category-mobile-art{display:block;height:260px;background-size:auto 280%;background-repeat:no-repeat;background-position:30% 50%;filter:saturate(.87);border-bottom:1px solid #ffffff20}.rul2-category--n5 .rul2-category-mobile-art{background-image:url(robotuplink-n5.webp)}.rul2-category--k1 .rul2-category-mobile-art{background-image:url(robotuplink-k1.webp);background-position:40% 50%}.rul2-image-failed .rul2-category-mobile-art{display:none}}
@media(max-width:380px){.rul2-articles,#rul2-latest .rul2-articles{grid-template-columns:1fr}.rul2-terminal-intro h1{font-size:1.65rem}.rul2-motion-toggle{max-width:70px;line-height:1.2}.rul2-card p{display:block}}
@media(prefers-reduced-motion:reduce){.rul2-v2 *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rul2-v2 .rul2-card:hover{transform:none}}
.rul2-card .rul2-eyebrow{color:var(--category-color,var(--purple))}.rul2-v2{position:relative}.rul2-home .rul2-topbar{position:absolute;top:14%;top:clamp(90px,8.5vw,150px);right:0;width:auto;padding:0 20px;background:transparent;border:0}.rul2-home .rul2-topbar>.rul2-wordmark{display:none}.rul2-home .rul2-tools{border:1px solid #756785;background:#0b1220dc;border-radius:12px;padding:3px 10px}.rul2-home .rul2-menu nav{top:calc(100% + 6px)}.rul2-room-heading{font-weight:750;font-size:clamp(1rem,1.7vw,1.8rem);margin-bottom:12px!important;color:#fff!important}.rul2-newsletter-pending{margin-top:14px}.rul2-newsletter-pending label{font-size:.8rem}.rul2-newsletter-pending>div{display:flex;gap:8px;margin:6px 0}.rul2-newsletter-pending input{width:100%;min-width:0;border:1px solid #6a5a7a;border-radius:6px;padding:10px;background:#f4f1f9;color:#373042}.rul2-newsletter-pending button{background:#c0aad9;border:0;border-radius:6px;padding:10px;color:#261739;white-space:nowrap}.rul2-newsletter-pending small{color:#d8d1e4;font-size:.7rem}.rul2-video>img{aspect-ratio:16/9;width:100%;height:auto;object-fit:cover;border-radius:8px}
html:has(.rul2-v2:not(.rul2-light)){scroll-behavior:smooth}
 .rul2-category-nav{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}.rul2-category-nav a{padding:10px 8px;font-size:.8rem;min-height:44px}.rul2-category-nav a[aria-current="page"]{color:var(--accent);border-bottom:2px solid var(--accent)}
@media(max-width:1100px) and (min-width:768px){.rul2-category-nav{order:3;width:100%}.rul2-category--n5 .rul2-topbar,.rul2-category--k1 .rul2-topbar{flex-wrap:wrap;gap:10px}.rul2-category--n5 .rul2-tools,.rul2-category--k1 .rul2-tools{margin-left:auto}}
@media(max-width:767px){.rul2-category-nav{display:none}}
@media(max-width:767px){.rul2-home .rul2-topbar{position:relative;top:auto;right:auto;width:auto;padding:12px 16px;background:#070e1d;justify-content:space-between}.rul2-home .rul2-topbar>.rul2-wordmark{display:block}.rul2-home .rul2-tools{padding:0;border:0;background:none}#rul2-featured .rul2-articles{grid-template-columns:1fr}#rul2-featured .rul2-card h3{font-size:1.15rem}#rul2-featured .rul2-card p{display:block}.rul2-newsletter-pending>div{flex-wrap:wrap}.rul2-newsletter-pending button{min-height:44px}}
@media(prefers-reduced-motion:reduce){html:has(.rul2-v2){scroll-behavior:auto}}

@media(max-width:767px){.rul2-category-mobile-art{position:relative}.rul2-category-mobile-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,#0a1020)}}
.rul2-image-failed .rul2-category-room{display:none}.rul2-side-nav{top:7.2%;height:49%}

/* Contraste des catégories dans le terminal N5. */
.rul2-v2 .rul2-room-panel .rul2-card .rul2-eyebrow{color:var(--accent)}

/* Retour vers le décor depuis le début de la zone éditoriale. */
.rul2-v2 .rul2-return--top{margin:24px auto 0;background:#6830b5;border-color:#6830b5;color:#fff!important;box-shadow:0 4px 12px #6830b526}.rul2-v2 .rul2-return--top:hover{background:#51258d;border-color:#51258d}.rul2-v2 .rul2-return--top:focus-visible{outline:3px solid #6830b5;outline-offset:4px}

/* Compteur indépendant du visuel, et trois univers complémentaires. */
.rul2-home .rul2-scene-image{filter:none}
.rul2-v2 .rul2-counter{top:2.4%;right:1%;width:27%;min-height:10%;padding:6px 10px;border:2px solid #58b9ff;background:#07162d;color:#e8f5ff!important;box-shadow:0 0 15px #338aff55;border-radius:14px;line-height:1.25}
.rul2-counter-copy>strong{font-size:clamp(1rem,1.9vw,2rem);color:#80dbff;white-space:nowrap;letter-spacing:.03em}
.rul2-counter-copy>span{font-size:.7em;letter-spacing:.06em}
.rul2-counter-copy>small{color:#c0d9ed;font-size:.65em}
.rul2-counter-link{text-decoration:underline;text-underline-offset:3px}
.rul2-v2 .rul2-counter--mobile{display:none}
.rul2-category--m2{--accent:#86cbb4}.rul2-category--b3{--accent:#edb377}.rul2-category--w4{--accent:#b0bd82}
.rul2-category--m2 .rul2-terminal-intro .rul2-eyebrow,.rul2-category--b3 .rul2-terminal-intro .rul2-eyebrow,.rul2-category--w4 .rul2-terminal-intro .rul2-eyebrow{color:var(--accent)}
.rul2-category--m2 .rul2-room-panel{left:51%;right:3%;top:18%;bottom:29%}
.rul2-category--w4 .rul2-room-panel{left:60%;right:3%;top:20%;bottom:33%}
.rul2-category--b3 .rul2-room-panel{left:49%;right:10%;top:25%;bottom:28%}
.rul2-category--w4 .rul2-room-panel .rul2-articles{grid-template-columns:repeat(2,minmax(0,1fr))}
.rul2-category--m2 .rul2-room-explore{left:36%;width:28%}
.rul2-category--b3 .rul2-room-explore{left:35.5%;width:29%}
.rul2-category--w4 .rul2-room-explore{left:40%;width:20%}
@media(max-width:1100px) and (min-width:768px){.rul2-v2:not(.rul2-home) .rul2-topbar{flex-wrap:wrap;gap:10px}.rul2-v2:not(.rul2-home) .rul2-tools{margin-left:auto}}
@media(max-width:767px){.rul2-v2 .rul2-counter--mobile{display:flex;position:static;width:auto;min-height:100px;margin:8px 16px 24px;font-size:1rem}.rul2-counter-copy>strong{font-size:1.8rem}.rul2-category--m2 .rul2-category-mobile-art{background-image:url(robotuplink-m2.webp);background-position:35% 50%}.rul2-category--b3 .rul2-category-mobile-art{background-image:url(robotuplink-b3.webp);background-position:35% 50%}.rul2-category--w4 .rul2-category-mobile-art{background-image:url(robotuplink-w4.webp);background-position:35% 50%}}
.rul2-image-failed .rul2-counter--mobile{display:flex;position:static;margin:16px;width:auto}

.rul2-t0{display:flex;align-items:center;justify-content:center;gap:18px;padding:20px 16px 0;background:#f4f6fb;color:#342750}.rul2-t0-art{display:block;flex:0 0 192px;width:192px;height:148px;background-image:url(robotuplink-reference-footer.webp);background-size:1582.5px 1554px;background-position:-525px -1350px;background-repeat:no-repeat}.rul2-t0 p{font-weight:650;font-size:1.05rem;margin-top:8px}.rul2-t0>div{max-width:280px}@media(max-width:480px){.rul2-t0{gap:4px}.rul2-t0-art{flex-basis:160px;width:160px;height:123px;background-size:1318.75px 1295px;background-position:-437.5px -1125px}.rul2-t0 p{font-size:.9rem}}

.rul2-room-panel .rul2-articles:has(>.rul2-card:only-child){grid-template-columns:1fr}
.rul2-room-panel .rul2-card:only-child .rul2-card-link{display:grid;grid-template-columns:45% 55%;align-items:stretch}
.rul2-room-panel .rul2-card:only-child .rul2-card-image{aspect-ratio:auto;height:100%;min-height:150px}
.rul2-room-panel .rul2-card:only-child .rul2-card-body{align-self:center}
.rul2-category--b3 .rul2-room-panel{top:20%}
.rul2-t0-art{flex-basis:160px;width:160px;background-position:-555px -1350px;clip-path:polygon(0 0,72% 0,72% 42%,100% 42%,100% 100%,0 100%)}
@media(max-width:480px){.rul2-t0-art{flex-basis:134px;width:134px;background-position:-462.5px -1125px}}

.rul2-v2 .rul2-room-panel.rul2-perspective{left:0;top:0;right:auto;bottom:auto;transform-origin:0 0;border-radius:8px;box-shadow:none}.rul2-category--k1 .rul2-room-panel{background:linear-gradient(130deg,#20101e,#33182b)}

.rul2-room-panel{scrollbar-width:thin;scrollbar-color:var(--accent) transparent}
.rul2-room-panel .rul2-articles:has(>.rul2-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.rul2-room-panel .rul2-card-meta{display:none}
.rul2-category--k1 .rul2-room-panel{padding:12px}
.rul2-category--k1 .rul2-room-heading{font-size:1rem;margin-bottom:8px!important}
.rul2-category--k1 .rul2-room-panel .rul2-card-image{height:64px;aspect-ratio:auto}
.rul2-category--k1 .rul2-room-panel .rul2-card-body{padding:8px}
.rul2-category--k1 .rul2-room-panel .rul2-card h3{font-size:.78rem;line-height:1.2;margin-top:6px}
.rul2-category--k1 .rul2-room-panel .rul2-eyebrow{font-size:.55rem}

@media(max-width:767px){.rul2-v2 .rul2-topbar{gap:8px}.rul2-v2 .rul2-wordmark{font-size:1rem}.rul2-v2 .rul2-tools{gap:8px;flex-shrink:0}.rul2-v2 .rul2-menu summary{white-space:nowrap}.rul2-v2 .rul2-category-mobile-art{background-position:35% 15%}}

/* 2.1.5 : les zones du décor sont les liens, sans second cartouche. */
.rul2-v2 .rul2-window{padding:0;border:0;background:none;box-shadow:none;border-radius:8px}
.rul2-v2 .rul2-window>.rul2-sr{background:none;border:0;padding:0;width:1px;font-size:inherit;display:block}
.rul2-v2 .rul2-room-explore{padding:0;min-height:0;border:0;background:none;box-shadow:none;border-radius:0;clip-path:polygon(6% 0,94% 0,100% 50%,94% 100%,6% 100%,0 50%)}
.rul2-category--n5 .rul2-room-explore{left:36.4%;width:27.2%;bottom:5.6%;height:8.2%}
.rul2-category--k1 .rul2-room-explore{left:40%;width:20%;bottom:3.7%;height:7.7%}
.rul2-category--m2 .rul2-room-explore{left:36.2%;width:29%;bottom:5.1%;height:8.4%}
.rul2-category--b3 .rul2-room-explore{left:35.7%;width:28.6%;bottom:4.7%;height:8.2%}
.rul2-category--w4 .rul2-room-explore{left:40%;width:20%;bottom:5.6%;height:6.8%}
.rul2-v2 .rul2-t0{justify-content:flex-start;padding:20px max(20px,calc((100% - 1160px)/2)) 0;gap:0}
/* Un chiffre plus grand et un encadrement ajusté au panneau peint. */
@media(min-width:768px){
.rul2-home .rul2-counter{top:2.8%;right:1.5%;width:26%;min-height:8.5%;padding:3px 5px;border-width:1px;border-radius:10px;box-shadow:0 0 8px #338aff25}
.rul2-home .rul2-counter-copy>strong{font-size:clamp(1.5rem,2.75vw,3rem);line-height:1.05;letter-spacing:0}
.rul2-home .rul2-counter-copy>span{font-size:clamp(.5rem,.72vw,.8rem)}
.rul2-home .rul2-counter-copy>small{font-size:clamp(.45rem,.65vw,.7rem)}
}
/* Voile limité au pourtour lumineux ; l’intérieur et le personnage restent libres. */
@media(hover:hover) and (pointer:fine){
.rul2-window::before,.rul2-side-nav>a::before{content:"";position:absolute;inset:0;pointer-events:none;background:#030714;opacity:.45;padding:8px;border-radius:inherit;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;transition:opacity .2s}
.rul2-side-nav>a{position:relative;box-shadow:none!important;background:none!important}
.rul2-window:hover::before,.rul2-window:focus-visible::before,.rul2-side-nav>a:hover::before,.rul2-side-nav>a:focus-visible::before{opacity:0}
.rul2-window:hover,.rul2-window:focus-visible{box-shadow:0 0 16px color-mix(in srgb,var(--accent) 32%,transparent)}
.rul2-side-nav>a:hover,.rul2-side-nav>a:focus-visible{filter:drop-shadow(0 0 5px #73caff)}
.rul2-room-explore::before,.rul2-scene-explore::before{content:"";position:absolute;inset:0;background:#0a071d;opacity:.23;transition:opacity .2s;pointer-events:none}
.rul2-room-explore:hover::before,.rul2-room-explore:focus-visible::before,.rul2-scene-explore:hover::before,.rul2-scene-explore:focus-visible::before{opacity:0}
.rul2-room-panel{filter:brightness(.9);transition:filter .2s}
.rul2-room-panel:hover,.rul2-room-panel:focus-within{filter:brightness(1)}
}
.rul2-v2 .rul2-room-explore:focus-visible{outline:0;box-shadow:inset 0 0 0 3px #f2dbff}
@media(prefers-reduced-motion:reduce){.rul2-window::before,.rul2-side-nav>a::before,.rul2-room-explore::before,.rul2-scene-explore::before{transition:none!important}}

/* L’éclairage reprend les pixels du décor, sans rectangle sombre ajouté. */
@media(hover:hover) and (pointer:fine){
.rul2-home .rul2-scene-image{filter:brightness(.9)}
.rul2-window::before,.rul2-side-nav>a::before{padding:0;mask:none;background:transparent url(robotuplink-commandement-v2.webp) no-repeat;background-size:var(--scene-width) auto;background-position:var(--scene-x) var(--scene-y);opacity:0;border-radius:0}
.rul2-window:hover::before,.rul2-window:focus-visible::before,.rul2-side-nav>a:hover::before,.rul2-side-nav>a:focus-visible::before{opacity:1}
.rul2-window{clip-path:polygon(5% 0,95% 0,100% 5%,100% 95%,95% 100%,5% 100%,0 95%,0 5%)}
.rul2-window--n5{clip-path:polygon(5% 0,95% 0,100% 5%,100% 95%,95% 100%,35% 100%,35% 85%,0 80%,0 5%)}
.rul2-side-nav>a{clip-path:polygon(8% 0,100% 14%,100% 100%,0 86%,0 8%)}
}
@media(min-width:768px){.rul2-home .rul2-counter{width:22%;}.rul2-home .rul2-counter-copy>strong{font-size:clamp(1.4rem,2.65vw,2.9rem)}}

.rul2-v2 .rul2-room-panel .rul2-card-link:hover,.rul2-v2 .rul2-room-panel .rul2-card-link:focus-visible{color:#fff}
.rul2-t0-art{mix-blend-mode:multiply}
.rul2-window:focus-visible,.rul2-side-nav>a:focus-visible{outline:3px solid #f5eaff;outline-offset:-3px}
.rul2-light .rul2-window::before,.rul2-light .rul2-side-nav>a::before,.rul2-light .rul2-room-explore::before,.rul2-light .rul2-scene-explore::before{transition:none!important}

.rul2-t0-art{filter:brightness(1.16)}

/* Compteur en verre, ajusté à l’intérieur du panneau du décor. */
@media(min-width:768px){
.rul2-home .rul2-counter{top:3.5%;right:2%;width:20%;min-height:7.6%;padding:2px 4px;border:0;border-radius:6px;background:rgba(7,22,45,.58);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:none}
.rul2-home .rul2-counter::before{content:"";position:absolute;left:-10%;top:0;width:10%;height:100%;background:rgba(7,22,45,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:6px 0 0 6px;pointer-events:none}
.rul2-home .rul2-counter-copy>strong{font-size:clamp(1.3rem,2.35vw,2.6rem);line-height:1.05}
.rul2-home .rul2-counter-copy>span{font-size:clamp(.48rem,.68vw,.75rem)}
.rul2-home .rul2-counter-copy>small{font-size:clamp(.42rem,.6vw,.65rem)}
}

/* Le cadre bleu du décor forme le bouton, comme les rubriques latérales. */
.rul2-counter-copy{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1px;text-transform:none;letter-spacing:normal}
.rul2-counter-copy>span{text-transform:uppercase}
@media(min-width:768px){
.rul2-home .rul2-topbar{display:none}
.rul2-home .rul2-counter{top:2.8%;right:1%;width:26.5%;height:9.5%;min-height:0;padding:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:0;border-radius:0;box-shadow:none;clip-path:polygon(7% 0,95% 0,100% 20%,100% 80%,95% 100%,7% 100%,0 75%,0 25%);cursor:pointer}
.rul2-home .rul2-counter::before{content:"";inset:0;width:auto;height:auto;background:transparent url(robotuplink-commandement-v2.webp) no-repeat;background-size:var(--scene-width) auto;background-position:var(--scene-x) var(--scene-y);border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none;opacity:0;transition:opacity .2s;pointer-events:none}
.rul2-home .rul2-counter:hover::before,.rul2-home .rul2-counter:focus-visible::before{opacity:1}
.rul2-home .rul2-counter-copy{position:absolute;inset:10% 4% 8% 14%;z-index:1;background:#07162d;border-radius:3px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:0 3px}
.rul2-home .rul2-counter-copy>strong{font-size:clamp(1.25rem,2.1vw,2.4rem);line-height:1.05}
.rul2-home .rul2-counter-copy>span{font-size:clamp(.45rem,.64vw,.72rem);letter-spacing:.07em}
.rul2-home .rul2-counter-copy>small{font-size:clamp(.4rem,.55vw,.62rem);text-transform:none;letter-spacing:normal}
.rul2-home .rul2-counter:focus-visible{outline:3px solid #e1f5ff;outline-offset:-4px}
}
@media(prefers-reduced-motion:reduce){.rul2-counter::before{transition:none!important}}

@media(max-width:767px){.rul2-home .rul2-counter--mobile{width:auto;min-height:120px;padding:14px;border:1px solid #58b9ff;background:linear-gradient(135deg,#0c2844,#07162d);box-shadow:0 0 8px #338aff25;border-radius:10px}.rul2-home .rul2-counter--mobile .rul2-counter-copy>strong{font-size:1.8rem}.rul2-home .rul2-counter--mobile .rul2-counter-copy>span{font-size:.72rem}.rul2-home .rul2-counter--mobile .rul2-counter-copy>small{font-size:.65rem}}

/* 2.1.14 : conserver les filets bleus, texte blanc comme les onglets. */
@media(min-width:768px){
.rul2-home .rul2-counter-copy{inset:23% 7% 22% 17%;padding:0 2px;border-radius:0;background:linear-gradient(110deg,#071329,#07152b 65%,#06152c);backdrop-filter:none;-webkit-backdrop-filter:none;gap:2px;color:#eef6ff;text-shadow:0 0 4px #91cfff45}
.rul2-home .rul2-counter-copy>span{font-size:clamp(.45rem,.72vw,.82rem);font-weight:500;letter-spacing:.025em;line-height:1.15}
.rul2-home .rul2-counter-copy>strong{font-size:clamp(1.05rem,1.65vw,1.9rem);font-weight:500;line-height:1.1;color:#eef6ff;letter-spacing:.015em}
.rul2-home .rul2-counter-copy>small{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
}

/* 2.1.16 : pleine largeur et zones latérales légèrement abaissées. */
body:has(.rul2-home) #wrapper,
body:has(.rul2-home) #inner-wrap,
body:has(.rul2-home) .content-area,
body:has(.rul2-home) .content-container,
body:has(.rul2-home) .site-container,
body:has(.rul2-home) .content-wrap,
body:has(.rul2-home) .site-main,
body:has(.rul2-home) .entry,
body:has(.rul2-home) .entry-content-wrap,
body:has(.rul2-home) .entry-content{max-width:none!important;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}
body:has(.rul2-home) .rul2-home{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.rul2-home .rul2-desktop-scene{width:100%;max-width:none}
.rul2-home .rul2-desktop-scene>.rul2-scene-image{width:100%!important;max-width:none!important;height:auto!important}
@media(min-width:768px){.rul2-home .rul2-side-nav{top:8.2%}}

/* 2.1.17 : accueil mobile compact, estimation secondaire et visuels entiers. */
.rul2-home-mobile-art,.rul2-title-mobile{display:none}
@media(max-width:767px){
.rul2-home .rul2-title-desktop{display:none}
.rul2-home .rul2-title-mobile{display:inline}
.rul2-home-mobile-art{display:block;height:clamp(120px,32vw,230px);background:url(robotuplink-commandement-v2.webp) center 48%/100% auto no-repeat;border-bottom:1px solid #72caff33}
.rul2-home .rul2-terminal-intro{padding:20px 16px 16px}
.rul2-home .rul2-terminal-intro .rul2-eyebrow{font-size:.6rem;margin-bottom:8px}
.rul2-home .rul2-terminal-intro h1{font-size:clamp(1.55rem,6.5vw,2rem);line-height:1.15}
.rul2-home .rul2-terminal-intro p{font-size:.88rem;line-height:1.5;margin:10px 0 0}
.rul2-home .rul2-mobile-universes{gap:8px;padding:0 16px 12px}
.rul2-home .rul2-terminal-card{min-height:82px;padding:9px 12px;gap:12px;border-radius:10px}
.rul2-home .rul2-terminal-art{flex-basis:62px;width:62px;height:64px;background-size:454px auto}
.rul2-home .rul2-terminal--n5 .rul2-terminal-art{background-position:-58px -84px}
.rul2-home .rul2-terminal--k1 .rul2-terminal-art{background-position:-136px -84px}
.rul2-home .rul2-terminal--m2 .rul2-terminal-art{background-position:-212px -84px}
.rul2-home .rul2-terminal--b3 .rul2-terminal-art{background-position:-291px -84px}
.rul2-home .rul2-terminal--w4 .rul2-terminal-art{background-position:-373px -84px}
.rul2-home .rul2-terminal-card strong{font-size:1.15rem}
.rul2-home .rul2-terminal-card>span:nth-child(2)>span{font-size:.78rem;line-height:1.35}
.rul2-home .rul2-counter--mobile{position:static;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;width:auto;min-height:58px;margin:0 16px 20px;padding:10px 12px;text-align:left;border:1px solid #69bfff28;border-radius:8px;background:#0c192c;box-shadow:none}
.rul2-home .rul2-counter--mobile .rul2-counter-copy{align-items:flex-start;gap:2px;min-width:0}
.rul2-home .rul2-counter--mobile .rul2-counter-copy>strong{font-size:.87rem;font-weight:550;line-height:1.35;color:#d9efff}
.rul2-home .rul2-counter--mobile .rul2-counter-copy>small{font-size:.65rem;color:#9baec5}
.rul2-home .rul2-counter-icon{color:#7bcaff;font-size:1.1rem}
.rul2-home .rul2-counter-arrow{margin-left:auto;color:#7bcaff}
.rul2-home .rul2-return--top{display:none!important}
.rul2-home .rul2-card-image:has(img){aspect-ratio:auto;height:auto;background:#e5eaf4}
.rul2-home .rul2-card-image img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
.rul2-home #rul2-featured{padding-top:28px}
}

@media(max-width:767px){
.rul2-home .rul2-card-image img{aspect-ratio:var(--rul2-image-ratio,16 / 9);contain-intrinsic-size:none;height:auto!important}
}

@media(max-width:767px){
.rul2-home .rul2-counter--mobile .rul2-counter-copy{flex:1}
.rul2-home .rul2-counter--mobile .rul2-counter-copy>strong{white-space:normal}
.rul2-home .rul2-counter-icon,.rul2-home .rul2-counter-arrow{flex-shrink:0}
.rul2-home .rul2-terminal-card:hover,.rul2-home .rul2-terminal-card:focus-visible{color:#fff}
}

/* Preserve complete thumbnails in the desktop home card frames. */
@media(min-width:768px){
.rul2-home .rul2-card-image:has(img){background:#0a1425}
.rul2-home .rul2-card-image img{object-fit:contain;object-position:center;contain-intrinsic-size:none}
}

/* 2.1.21 : image mobile entière et petit compteur supérieur. */
.rul2-mobile-top-counter{display:none}
@media(max-width:767px){
.rul2-home .rul2-home-mobile-art{height:auto;aspect-ratio:1672 / 941;background-size:contain;background-position:center;border-bottom:1px solid #72caff33}
.rul2-home .rul2-mobile-top-counter{display:block;padding:0 12px 8px;background:#080f20}
.rul2-home .rul2-mobile-top-counter .rul2-counter--mobile{margin:0;min-height:0;padding:7px 10px;gap:8px;border:1px solid #69bfff38;border-radius:6px;background:#0c192c}
.rul2-home .rul2-mobile-top-counter .rul2-counter-copy>strong{font-size:.76rem;line-height:1.3}
.rul2-home .rul2-mobile-top-counter .rul2-counter-copy>small{font-size:.56rem;line-height:1.25}
.rul2-home .rul2-mobile-top-counter .rul2-counter-icon{font-size:.85rem}
}

@media(max-width:767px){.rul2-home .rul2-home-mobile-art{position:relative}.rul2-home .rul2-home-mobile-art::after{content:"Estimation ↑";position:absolute;top:3.7%;right:2%;width:24%;height:7%;display:grid;place-items:center;background:#08182e;color:#edf7ff;font-size:clamp(4px,1.5vw,10px);line-height:1;border-radius:2px}}
