/* V5 — une vitrine éditoriale, bleu nuit / violet. */
.v5{--v5-line:#ffffff21;--v5-dim:#bac0d2;background:#090e21}.v5 [hidden]{display:none!important}.v5 .bg-fx{opacity:.3}.v5 .wrap{max-width:1440px;padding-inline:5vw}.v5 header.site{background:#090e21ed;border-bottom:1px solid var(--v5-line)}.v5 .navbar{height:82px}.v5 .r-pill,.v5 .v4-nav-project{background:#c9b6ff!important;color:#100c22!important;border-radius:5px;box-shadow:none;font-weight:600}.v5 .r-pill:hover{background:#e3d8ff!important;transform:translateY(-2px)}.v5 a:focus-visible,.v5 button:focus-visible{outline:3px solid #a9caff;outline-offset:5px}.v5-hero{overflow:hidden;position:relative;background:linear-gradient(120deg,#090e21 55%,#18133a)}.v5-eyeline{display:flex;justify-content:space-between;gap:15px;padding-block:25px;border-bottom:1px solid var(--v5-line);font:10px/1.6 monospace;letter-spacing:.11em;color:#aeb5cc}.v5-heading{padding:50px 0 48px;position:relative}.v5-overline{font:11px/1.8 monospace;letter-spacing:.1em;color:#c5b2f4;margin:0 0 20px}.v5 #v4-title{font:650 clamp(56px,7.6vw,114px)/.99 "Segoe UI",sans-serif;letter-spacing:-.065em;max-width:1200px;margin:0;text-align:left;color:#f8f7ff}.v5 #v4-title>span{display:inline-block;background:linear-gradient(105deg,#a6c9ff 5%,#bba3ff 65%,#dfc3ff);background-clip:text;-webkit-background-clip:text;color:transparent;padding-bottom:.14em}.v5-intro{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:20px;max-width:960px}.v5-intro p{color:#c1c5d6;font-size:17px;line-height:1.65;margin:0}.v5-intro>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.v5-intro .v4-text-link{font-size:12px}.v5-star{position:absolute;right:-15px;bottom:60px;font-size:145px;line-height:1;color:#b6a1ff;transform:rotate(12deg);font-weight:100}.v5-exhibit{border:1px solid #bca6ff44;background:#0f152c;box-shadow:0 28px 100px #0005;position:relative;scroll-margin-top:100px}.v5-exhibit-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 25px;border-bottom:1px solid var(--v5-line)}.v5-exhibit-top>span{font:10px/1.5 monospace;letter-spacing:.1em;color:#adb8d3}.v5-switch{display:flex;gap:5px}.v5-switch button{border:1px solid transparent;border-radius:4px;background:transparent;color:#bac0d2;padding:11px 16px;min-height:44px;font:12px/1.4 "Segoe UI",sans-serif;cursor:pointer}.v5-switch button[aria-pressed=true]{background:#cbb8ff;color:#15102c}.v5-switch button:hover{border-color:#cbb8ff}.v5-scene{display:grid;grid-template-columns:.85fr 1.15fr;gap:55px;padding:45px;align-items:center;min-height:470px;background:radial-gradient(ellipse at 100% 100%,#6a40b929,transparent 70%)}.v5 .v5-scene-copy h2{font-size:clamp(34px,4vw,59px);line-height:1.02;letter-spacing:-.045em;font-weight:500;margin:0 0 20px}.v5 .v5-scene-copy h2 em{font-family:Georgia,serif;color:#c9b6ff}.v5-scene-copy>p{color:#b5bfd5;max-width:310px;font-size:14px;line-height:1.8}.v5-arrow-link{display:flex;align-items:center;justify-content:space-between;gap:30px;width:fit-content;color:#dbcfff;font-size:13px;min-height:44px;border-bottom:1px solid #bc9fff80;text-decoration:none}.v5-offer{display:flex;gap:18px;align-items:center;margin-top:28px}.v5-offer strong{font-size:36px;letter-spacing:-.055em;color:#f3edff;font-weight:500;white-space:nowrap}.v5-offer span{font-size:10px;line-height:1.7;color:#aeb9d1}.v5-artisan{display:block;border:1px solid #e5daca66;transform:rotate(-3deg);background:#f3eee5;box-shadow:0 24px 35px #0005;transition:transform .35s;color:#fff}.v5-artisan:hover{transform:rotate(-1deg) translateY(-5px)}.v5-browser{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;color:#4e4237;font:9px/1.3 monospace}.v5-browser i{font-size:7px;font-style:normal;color:#8f7b60;letter-spacing:2px}.v5-artisan-image{position:relative;height:330px;overflow:hidden;background:#413e37}.v5-artisan-image img{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.65);transition:transform .8s}.v5-artisan:hover img{transform:scale(1.04)}.v5-artisan-title{position:absolute;inset:0;padding:26px;display:flex;flex-direction:column;align-items:flex-start;background:linear-gradient(90deg,#14171980,transparent)}.v5-artisan-title small{font:8px/1.5 monospace;letter-spacing:.12em;color:#f1e6d8}.v5-artisan-title strong{font:400 clamp(28px,3.1vw,43px)/1.02 Georgia,serif;letter-spacing:-.035em;margin-top:auto;color:#fff8ed}.v5-artisan-title>span{display:flex;justify-content:space-between;width:100%;margin-top:25px;border-top:1px solid #fffc;padding-top:12px;font-size:11px;color:#fff8ed}.v5-artisan-foot{display:flex;justify-content:space-between;padding:13px 15px;font:8px/1.5 monospace;color:#655745}.v5-exhibit-foot{display:flex;justify-content:space-between;gap:20px;padding:20px 25px;border-top:1px solid var(--v5-line);font-size:10px;line-height:1.7;color:#aeb5cc}.v5-exhibit-foot>span:last-child{font:9px/1.7 monospace;color:#cbb8ff}.v5-signature{padding:60px 0 65px;display:flex;flex-direction:column;font-size:clamp(23px,3.6vw,49px);letter-spacing:-.04em;line-height:1.15}.v5-signature>span:first-child{color:#777f99}.v5-signature>span:last-child{align-self:flex-end;color:#e4dcff}.v5-signature em{font:italic 1.03em Georgia,serif;color:#b5a0fb}.v5-stock{background:#eef0ff;border:1px solid #c6bbef;border-radius:8px;color:#1d2146;transform:rotate(2deg);box-shadow:0 25px 50px #0004}.v5-stock-head{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid #b7bcd3}.v5-stock-head>span{font-size:16px;font-weight:600}.v5-stock-head small{display:block;font:8px/1.8 monospace;letter-spacing:.06em;color:#626884}.v5-stock-head>b{margin-left:auto;font:10px monospace;color:#62547b}.v5-stock-body{padding:25px}.v5-stock-body>p{font:10px monospace;letter-spacing:.1em;color:#6b6782}.v5-big-count{display:flex;align-items:center;gap:22px;margin:10px 0}.v5-big-count output{font-size:92px;letter-spacing:-.06em;line-height:1.1;color:#483296}.v5-big-count>span{font-size:17px;line-height:1.5;color:#5d5c76}.v5-count-controls{display:flex;align-items:center;gap:10px}.v5-count-controls button{background:#dcd8f5;border:1px solid #b8afdd;color:#43347d;border-radius:5px;width:45px;height:45px;font-size:25px;cursor:pointer}.v5-count-controls button:hover{background:#c6b7f3}.v5-count-controls>span{font-size:11px;color:#675f81;margin-left:8px}.v5-stock-result{display:flex;gap:30px;margin-top:22px;padding-block:17px;border-block:1px solid #bbc0d9;font-size:12px;color:#615d7a}.v5-stock-result b{margin-left:12px;color:#352359}.v5-stock-body>.v5-arrow-link{color:#4b318d;margin-top:12px;border-color:#9683c1}.v5 .v4-needs{background:#eeeafb;max-width:none;padding:65px max(5vw,calc((100vw - 1296px)/2));color:#14182e}.v5 .v4-needs .v4-kicker{color:#615084}.v5 .v4-needs .v4-section-head h2{color:#14182e;font-size:clamp(35px,4vw,58px)}.v5 .v4-needs h2 em{color:#71539f}.v5 .v4-section-head>p{color:#716a83}.v5 .v4-needs-grid{display:block}.v5 .v4-need{background:transparent;border:0;border-top:1px solid #aca2c1;border-radius:0;display:grid;grid-template-columns:1.2fr .25fr 1.7fr 1.7fr;gap:30px;padding:30px 0;align-items:center}.v5 .v4-need .v4-card-number{color:#71627e;font-size:9px}.v5 .v4-need img{width:50px;height:50px;margin:0}.v5 .v4-need h3{margin:0;color:#22263f;font-size:26px}.v5 .v4-need p{margin:0;color:#655f78;line-height:1.7;font-size:13px}.v5 .v4-need>a{grid-column:3/5;margin:0;border:0;padding:0;justify-content:start;color:#604783;font-size:13px}.v5 .v4-underlinks,.v5 .v4-underlinks a{color:#635c76}.v5 .r-lab{padding-top:90px;padding-bottom:80px}.v5 .r-lab h2{font-size:clamp(32px,4vw,56px);letter-spacing:-.04em}.v5 .r-workbench{border-radius:8px}.v5 .catalog-section{border-top:1px solid #ffffff24;padding-block:80px}.v5 .gcard{border-radius:6px}.v5 .v4-method{padding-block:85px}.v5 .v4-steps li>span{font-size:56px;font-family:'Segoe UI',sans-serif;color:#b49bed;letter-spacing:-.07em}.v5 .v4-region{background:#171c37;border:0;padding:55px 5vw;max-width:none}.v5 .v4-future{border-radius:5px;background:linear-gradient(110deg,#141c35,#2e2150);padding:45px;margin-block:60px}.v5 .v4-closing{background:#c2acf4;color:#16102a;padding-block:90px;text-align:left}.v5 .v4-closing .wrap{position:relative}.v5 .v4-closing .v4-kicker,.v5 .v4-closing p:not(.v4-kicker){color:#453858}.v5 .v4-closing h2{color:#171127;font-size:clamp(45px,6.2vw,88px);line-height:1.03}.v5 .v4-closing h2 em{color:#554175}.v5 .v4-closing .r-pill{background:#19112e!important;color:#faf7ff!important}.v5 .v4-closing .v4-text-link{color:#332344;justify-content:flex-start}.v5 .guide{opacity:.9}.v5 :target{scroll-margin-top:100px}
@media(min-width:1500px){.v5 .wrap{padding-inline:60px}}@media(max-width:1100px){.v5-star{font-size:90px;bottom:115px;right:0}.v5-intro{max-width:850px}.v5-scene{gap:25px;padding:30px}.v5-artisan-image{height:310px}.v5 .v4-need{grid-template-columns:.8fr .3fr 1.2fr 1.5fr;gap:20px}.v5 .v4-need h3{font-size:23px}}
@media(max-width:760px){.v5 .wrap{padding-inline:22px}.v5 .navbar{height:72px}.v5-eyeline{padding-block:20px;font-size:8px}.v5-eyeline>span:last-child{display:none}.v5-heading{padding:36px 0}.v5 #v4-title{font-size:clamp(43px,9vw,68px);line-height:1.02}.v5-overline{font-size:9px;letter-spacing:.05em}.v5-intro{display:block;margin-top:20px}.v5-intro p{font-size:15px}.v5-intro>div{margin-top:24px}.v5-intro .r-pill{font-size:12px;padding-inline:16px;gap:15px}.v5-star{font-size:63px;bottom:125px;right:3px}.v5-exhibit-top{flex-direction:column;align-items:flex-start;padding:16px}.v5-exhibit-top>span{font-size:8px}.v5-switch{width:100%}.v5-switch button{flex:1;font-size:11px;padding-inline:8px}.v5-scene{grid-template-columns:1fr;padding:26px 20px 30px;gap:32px}.v5 .v5-scene-copy h2{font-size:39px}.v5-scene-copy>p{font-size:13px}.v5-offer strong{font-size:33px}.v5-artisan{transform:rotate(-2deg)}.v5-artisan-image{height:295px}.v5-artisan-title{padding:23px}.v5-artisan-title strong{font-size:36px}.v5-artisan-foot{font-size:7px;gap:10px}.v5-artisan-foot>span:last-child{display:none}.v5-exhibit-foot{display:block;padding:16px;font-size:9px}.v5-exhibit-foot>span:last-child{display:block;margin-top:10px;font-size:8px}.v5-signature{padding:40px 0;font-size:26px}.v5-signature>span:last-child{align-self:flex-start;margin-top:4px}.v5 .v4-needs{padding:44px 22px}.v5 .v4-need{grid-template-columns:50px 1fr;gap:16px}.v5 .v4-card-number{grid-column:1/-1}.v5 .v4-need h3{font-size:24px}.v5 .v4-need p,.v5 .v4-need>a{grid-column:2}.v5 .v4-need>a{font-size:12px;line-height:1.6}.v5 .v4-section-head>p{font-size:13px}.v5 .r-lab{padding-top:50px;padding-bottom:45px}.v5 .v4-future{margin:30px 22px;padding:27px}.v5-stock-head{padding:14px;gap:10px}.v5-stock-head>b{font-size:8px}.v5-stock-head small{font-size:7px}.v5-stock-body{padding:20px}.v5 .v4-closing{padding:55px 0}.v5 .v4-needs .v4-section-head h2{font-size:36px}.v5 .v4-region{padding:40px 22px}.v5 .v4-faq{padding-block:40px}}
@media(prefers-reduced-motion:no-preference){.v5-heading{animation:v5-arrive .65s both}.v5-exhibit{animation:v5-arrive .8s .1s both}@keyframes v5-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}}@media(prefers-reduced-motion:reduce){.v5 *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.v5 .v5-hero{padding:0}

/* Le contenu est lisible dès la première image. */
.v5-heading,.v5-exhibit{animation:none}

@media(max-width:450px){.v5-star{display:none}}

/* NEEDS_SCENES_START — offres statiques, animations de défilement supprimées. */
.static-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:40px 0}
.static-offers article{display:flex;flex-direction:column;align-items:flex-start;padding:32px 0;border-top:1px solid #79679660}
.static-offers .v4-card-number{color:#71617f}
.v5 .static-offers h3{font-size:clamp(24px,2.5vw,35px);line-height:1.15;letter-spacing:-.04em;margin:24px 0 20px}
.static-offers p{line-height:1.8;font-size:14px;color:#696077;margin:0 0 28px}
.static-offers a{margin-top:auto;color:#644393;text-underline-offset:6px;min-height:44px;display:flex;align-items:center;font-size:14px}
@media(max-width:760px){.static-offers{grid-template-columns:1fr;gap:0}.static-offers article{padding:28px 0}.v5 .static-offers h3{font-size:30px}}


/* GATEWAY_START — menu d’accueil en 3D, liens HTML natifs. */
.gateway{position:relative;isolation:isolate;min-height:calc(100svh - 82px);background:radial-gradient(ellipse at 50% 65%,#34336066,transparent 62%),linear-gradient(125deg,#090e21,#151329);overflow:clip;display:flex;flex-direction:column;align-items:center;padding:23px 25px 26px}
.gateway-intro{text-align:center;position:relative;z-index:3}.gateway-intro>p{font:9px/1.6 monospace;letter-spacing:.19em;color:#bcb0d5;margin:0 0 8px}.gateway-intro>span{font:15px 'Segoe UI';color:#c9c3d9}
.gateway-world{position:relative;width:100%;max-width:1180px;flex:1;min-height:415px;perspective:1500px;isolation:isolate;}
.gateway-board{position:absolute;width:700px;height:480px;left:50%;top:52%;margin:-240px 0 0 -350px;transform-style:preserve-3d;transform:rotateX(48deg) rotateZ(-32deg);}
.gateway-ground{position:absolute;left:20%;right:15%;top:42%;bottom:1%;background:#03061399;border-radius:50%;filter:blur(40px);transform:rotate(-16deg)}
.gateway-platform{inset:0;--depth:26px;pointer-events:none}
.gateway-platform>.solid-top{border-radius:17px;background:radial-gradient(#706d901f .85px,transparent 1px) 0 0/15px 15px,linear-gradient(135deg,#f1eefc,#b7bddb);border-color:#eeeaff;box-shadow:inset 0 1px 3px #fff,0 0 45px #8e7ccb22}
.gateway-platform>.solid-front{background:linear-gradient(#acb0ca,#757d9d)}
.gateway-board-caption{position:absolute;left:27px;bottom:17px;font:8px monospace;color:#77778e;letter-spacing:.16em}
.gateway-routes{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#a497ba;stroke-width:2;pointer-events:none}.gateway-signal{stroke:#8b69c8;stroke-width:4;stroke-dasharray:8 92;stroke-linecap:round;stroke-dashoffset:0}
.gateway-module{color:inherit;text-decoration:none;cursor:pointer;transform:translateZ(26px);transition:transform .28s ease;outline:none!important;}
.gateway-module:hover,.gateway-module:focus-visible{transform:translateZ(43px)}
.gateway-module:focus-visible>.solid-top{outline:4px solid #689cff;outline-offset:7px}
.gateway-module:hover>.solid-top{border-color:#a680e5;box-shadow:inset 0 1px 2px #fff7,0 0 27px #9c7bc55c}
.gateway-core{left:248px;top:167px;width:204px;height:146px;--depth:72px;}
.gateway-core>.solid-top{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(130deg,#46405e,#161c34);border:1px solid #8a7aac;border-radius:14px;box-shadow:inset 0 2px 4px #c4b6ef44;}
.gateway-core>.solid-front{background:linear-gradient(#323147,#181d34);border-color:#5e5574}.gateway-core>.solid-right{background:linear-gradient(90deg,#1a1d32,#363146);border-color:#655a79}
.gateway-core img{width:40px;height:40px;margin-bottom:8px}.v5 #gateway-title{font:600 24px/1.1 'Segoe UI',sans-serif;letter-spacing:-.06em;color:#f8f4ff;margin:0;white-space:nowrap}.gateway-core-cta{font:6px/1.5 monospace;letter-spacing:.1em;color:#bcb0d5;margin-top:11px}
.gateway-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;}
.gateway-pod{width:166px;height:123px;--depth:25px;}
.gateway-pod>.solid-top{padding:13px 15px;display:flex;flex-direction:column;align-items:stretch;border-radius:12px;background:linear-gradient(130deg,#fff,#d5d6ea);border-color:#faf5ff;box-shadow:inset 0 1px 3px #fff;}
.gateway-pod small{font:8px/1 monospace;color:#897d9c;display:flex;justify-content:space-between}.gateway-pod small b{font-size:13px;font-weight:400;color:#8a72a7}
.gateway-pod-art{display:grid;place-items:center;height:54px;margin:2px 0 4px}.gateway-pod-title{font:600 14px/1.2 'Segoe UI',sans-serif;letter-spacing:-.025em;color:#4b405e;white-space:nowrap;text-align:center}
.gateway-sites{left:48px;top:39px}.gateway-apps{right:48px;top:39px}.gateway-services{left:48px;bottom:39px}.gateway-free{right:48px;bottom:39px}
.gateway-browser{width:66px;height:43px;display:flex;gap:4px;padding:5px;background:linear-gradient(130deg,#c1b4dc,#8e7eae);border:2px solid #9181ad;border-radius:5px;position:relative;box-shadow:2px 3px 0 #80719844}.gateway-browser i{width:3px;height:3px;background:#f0e8ff;border-radius:50%}.gateway-browser span{position:absolute;left:8px;right:8px;bottom:6px;height:20px;background:linear-gradient(120deg,#e5ddf4,#b6a5cf);border-radius:2px}
.gateway-app-grid{display:grid;grid-template-columns:repeat(2,20px);gap:6px;transform:rotate(-5deg)}.gateway-app-grid i{width:20px;height:20px;border-radius:5px;background:linear-gradient(135deg,#c9b3ee,#8869b7);border:1px solid #a48ac7;box-shadow:2px 3px 0 #917ba944,inset 0 1px 1px #fff8}.gateway-app-grid i:nth-child(2),.gateway-app-grid i:nth-child(3){background:linear-gradient(130deg,#b5cbf2,#7d9acd);border-color:#829ccb}
.gateway-settings{font:52px/1 'Segoe UI';color:#9b79c4;text-shadow:2px 3px #b7a4cd88}.gateway-tool{font:52px/1 'Segoe UI';color:#8e79b4;text-shadow:2px 3px #b7a4cd88;transform:rotate(-5deg)}
.gateway-bottom{text-align:center;position:relative;z-index:3;padding-top:8px}.gateway-bottom>p{font:11px 'Segoe UI';color:#afa4c6;margin:0 0 13px}.gateway-bottom>div{display:flex;align-items:center;justify-content:center;gap:26px}.gateway-enter{display:inline-flex;gap:30px;align-items:center;min-height:43px;border-radius:5px;background:#c6aefa;color:#201332;font:600 12px 'Segoe UI';padding:12px 21px;text-decoration:none}.gateway-enter:hover{background:#decbff}.gateway-contact{font:12px 'Segoe UI';color:#cabcdc;min-height:44px;display:flex;align-items:center}.gateway-replay{display:block;margin:13px auto 0;border:0;background:transparent;color:#9486ad;font:9px 'Segoe UI';cursor:pointer;min-height:26px;padding:5px 12px}.gateway-mobile-links{display:none}
@media(prefers-reduced-motion:no-preference){
 .gateway.is-entering .gateway-board{animation:gateway-camera 1.9s cubic-bezier(.22,.7,.2,1) both;}
 .gateway.is-entering .gateway-module{animation:gateway-land 1.5s cubic-bezier(.22,.7,.2,1) both;}
 .gateway.is-entering .gateway-sites{animation-delay:.08s}.gateway.is-entering .gateway-apps{animation-delay:.2s}.gateway.is-entering .gateway-services{animation-delay:.32s}.gateway.is-entering .gateway-free{animation-delay:.44s}
 .gateway.is-entering .gateway-signal{animation:gateway-connect 2s linear both;}.gateway.is-entering .signal-two{animation-delay:.25s}
 @keyframes gateway-camera{from{transform:rotateX(61deg) rotateZ(-47deg)}to{transform:rotateX(48deg) rotateZ(-32deg)}}
 @keyframes gateway-land{from{translate:0 0 150px}to{translate:0 0 0}}
 @keyframes gateway-connect{to{stroke-dashoffset:-100}}
}
@media(min-width:1500px){.gateway-world{perspective:1650px}.gateway-board{scale:1.14}.gateway-world{min-height:480px}}
@media(max-height:760px) and (min-width:760px){.gateway{padding-top:15px;padding-bottom:15px}.gateway-world{min-height:340px}.gateway-board{scale:.88}.gateway-bottom>p{margin-bottom:9px}.gateway-replay{margin-top:7px}.gateway-intro>span{font-size:13px}}
@media(max-width:1000px) and (min-width:760px){.gateway-board{scale:.86}}
@media(max-width:759px){.gateway{padding:22px 15px 30px;min-height:calc(100svh - 72px)}.gateway-intro>p{font-size:7px;letter-spacing:.1em}.gateway-intro>span{font-size:13px}.gateway-world{flex:none;height:290px;min-height:290px;width:100%;perspective:1000px}.gateway-board{scale:.46;top:54%}.gateway-ground{left:6%;right:6%;top:35%;bottom:8%;filter:blur(20px)}.gateway-bottom{padding-top:0}.gateway-bottom>p{display:none}.gateway-bottom>div{flex-direction:column;gap:4px}.gateway-enter{font-size:13px;min-height:44px;gap:45px}.gateway-contact{font-size:12px}.gateway-replay{margin-top:0;min-height:30px}.gateway-mobile-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;max-width:410px;margin-top:15px}.gateway-mobile-links>a{display:flex;justify-content:space-between;align-items:center;min-height:45px;padding:10px 13px;border:1px solid #a08bbd55;background:#c6aefa0b;border-radius:5px;color:#dbd0ee;font:12px 'Segoe UI';text-decoration:none}}
@media(max-width:370px){.gateway-board{scale:.39}.gateway-world{height:255px;min-height:255px}.gateway-mobile-links>a{font-size:11px;padding-inline:10px}}
@media(max-width:759px){.gateway-world{height:310px;min-height:310px}.gateway-board{scale:.4;top:50%}}
@media(max-width:370px){.gateway-world{height:280px;min-height:280px}.gateway-board{scale:.34}}
@media(prefers-reduced-motion:reduce){.gateway *{animation:none!important;transition:none!important}.gateway-replay{display:none!important}}


/* Carte mère : circuit imprimé, processeur, RAM, GPU, SSD et connectique. */
.gateway-platform>.solid-top{background:linear-gradient(125deg,#272840,#121b2a 60%,#25243d);border:2px solid #5f6078;box-shadow:inset 0 0 0 3px #151b2c,inset 0 1px 3px #bcb5e855,0 0 50px #4d429833}
.gateway-platform>.solid-front{background:linear-gradient(#3c4057,#182133);border-color:#4a4e62;border-bottom:3px solid #81728b}
.gateway-platform>.solid-right{background:linear-gradient(90deg,#161e30,#36394e);border-color:#4a4f68;border-right:2px solid #8a769b}
.gateway-routes{stroke:#89749b;stroke-width:2}.gateway-routes .mb-traces{stroke:#826a9e;stroke-width:1.25;opacity:.62}.gateway-routes .mb-vias{fill:#b39fbe;stroke:#1c2135;stroke-width:1}.gateway-routes .mb-holes{fill:#0a1020;stroke:#a498b0;stroke-width:3}.gateway-routes .gateway-signal{stroke:#b9a1ff;filter:drop-shadow(0 0 3px #bea4ff);stroke-width:3}.gateway-board-caption{color:#9d95ae;font-size:7px;bottom:17px;left:40px}.mb-print{position:absolute;top:22px;left:42px;color:#7d819c;font:7px monospace;letter-spacing:.13em}
.gateway-core{--depth:49px}.gateway-core::before{content:'';position:absolute;inset:-13px;transform:translateZ(6px);border:9px solid #515369;border-radius:7px;background:repeating-linear-gradient(90deg,#c1a87a 0 2px,#272b3e 2px 5px);box-shadow:0 0 0 3px #151d2a,2px 5px 0 #060b1799}
.gateway-core>.solid-top{background:repeating-linear-gradient(0deg,#ffffff08 0 1px,#33333306 1px 2px),linear-gradient(125deg,#c9cbd8,#f0eef5 40%,#aeb3c7 90%);border:2px solid #e5e4ed;border-radius:7px;box-shadow:inset 0 1px 3px #fff,0 0 0 5px #9b9dad}
.gateway-core>.solid-front{background:linear-gradient(#a8abba,#666d86);border-color:#b4b5c5;border-bottom:5px solid #272e44}.gateway-core>.solid-right{background:linear-gradient(90deg,#8a91a6,#d4d3dd);border-color:#a8abbb;border-right:4px solid #262d41}.v5 #gateway-title{color:#33354e;text-shadow:0 1px #fff9;font-size:25px}.gateway-core-cta{color:#66627b}.gateway-core img{width:39px;height:39px;box-shadow:0 1px 2px #45476155;border-radius:10px}
.gateway-pod{--depth:13px}.gateway-pod>.solid-top{background:linear-gradient(120deg,#2f324a,#1b2236);border-color:#5a5570;box-shadow:inset 0 1px 1px #9089aa33;border-radius:7px}.gateway-pod>.solid-front{background:linear-gradient(#39394f,#121b2b);border-color:#46455d}.gateway-pod>.solid-right{background:linear-gradient(90deg,#171d2e,#3b3a52);border-color:#4b4762}.gateway-pod small{color:#a199b4;font-size:7px}.gateway-pod small b{color:#bba7e0}.gateway-pod-title{color:#eee6fa;font-size:14px}.gateway-module:hover>.solid-top{border-color:#d1b4ff;box-shadow:inset 0 1px 2px #e1ccff44,0 0 24px #a783ff55}.gateway-module:hover .gateway-pod-title{color:#dcc5ff}
.mb-passives{position:absolute;inset:0;transform:translateZ(28px);transform-style:preserve-3d;pointer-events:none}.mb-cap{position:absolute;width:13px;height:18px;border-radius:45% / 23%;background:linear-gradient(90deg,#44495e,#151b2c 45%,#4e5065);box-shadow:2px 4px 1px #0007;transform:translateZ(6px)}.mb-cap::before{content:'+';display:grid;place-items:center;position:absolute;left:0;top:-2px;width:13px;height:7px;border-radius:50%;background:linear-gradient(#c3c2d0,#8a8fa4);color:#545369;font:7px/1 monospace;border:1px solid #bbb9c8}
.mb-power{position:absolute;left:265px;top:43px;width:170px;height:30px;display:grid;grid-template-columns:repeat(8,1fr);gap:4px;padding:5px;background:#111a2b;border:3px solid #5a576b;border-radius:4px;box-shadow:0 6px 0 #060e1d,3px 10px 2px #0008}.mb-power i{background:#050a15;border:2px solid #76708a;box-shadow:inset 0 -4px #aa9570}
.mb-pcie{position:absolute;left:268px;bottom:55px;width:164px;display:grid;gap:13px}.mb-pcie i{display:block;height:12px;background:repeating-linear-gradient(90deg,#bea575 0 2px,#171b2d 2px 4px);border:3px solid #68637c;border-radius:2px;box-shadow:0 4px #0c1423}.mb-pcie i:nth-child(2){width:70%;border-color:#41445d}
.mb-battery{position:absolute;left:75px;top:207px;width:41px;height:41px;border:3px solid #666a7c;border-radius:50%;display:grid;place-items:center;font:23px 'Segoe UI';color:#9a9bab;background:radial-gradient(at 30% 25%,#e1e1e9,#949aad);box-shadow:3px 6px 0 #0b1121,0 0 0 3px #252b3e;text-shadow:0 1px #fff}
.hw-ram-pair{display:flex;flex-direction:column;gap:11px;width:122px}.hw-ram{position:relative;height:15px;padding:2px 9px;display:flex;justify-content:space-between;background:linear-gradient(#7b6898,#3d335d);border:1px solid #9380ac;border-radius:2px;box-shadow:0 3px 0 #111727,0 5px 0 #52566f}.hw-ram i{width:17px;height:10px;border-radius:1px;background:linear-gradient(135deg,#42455c,#151d2d);border:1px solid #69677d;box-shadow:1px 1px #0009}.hw-ram::before,.hw-ram::after{content:'';position:absolute;top:-3px;width:5px;height:20px;background:linear-gradient(90deg,#8f90a4,#c7c1d3);border-radius:2px}.hw-ram::before{left:-4px}.hw-ram::after{right:-4px}.hw-ram b{position:absolute;left:9px;right:9px;bottom:-3px;height:3px;background:repeating-linear-gradient(90deg,#c6aa76 0 2px,transparent 2px 3px)}
.hw-gpu{position:relative;width:128px;height:53px;border:2px solid #737083;border-radius:6px;background:linear-gradient(125deg,#5c5c6e,#262b40);box-shadow:0 6px 0 #11182a,3px 8px 2px #0007;display:flex;justify-content:center;align-items:center;gap:11px;padding-right:8px}.hw-gpu::after{content:'';position:absolute;right:2px;top:6px;bottom:6px;width:4px;background:repeating-linear-gradient(#9a91ae 0 2px,#22293b 2px 5px)}.hw-fan{width:39px;height:39px;border:2px solid #aaa0b6;border-radius:50%;background:#121a2b;display:grid;place-items:center;box-shadow:inset 0 0 0 3px #303448,0 0 0 2px #252a3e}.hw-fan i{position:relative;width:31px;height:31px;border-radius:50%;background:repeating-conic-gradient(from 10deg,#1a2133 0deg 14deg,#77738b 15deg 30deg,#42435b 31deg 44deg)}.hw-fan i::after{content:'';position:absolute;inset:10px;border-radius:50%;background:radial-gradient(#b9a5d4,#66537f);border:1px solid #b0a0c6}.hw-gpu b{position:absolute;bottom:-7px;left:20px;width:65px;height:3px;background:repeating-linear-gradient(90deg,#c2a477 0 2px,transparent 2px 4px)}
.hw-ssd{width:119px;height:40px;position:relative;border:1px solid #a4a3b8;border-radius:4px;background:repeating-linear-gradient(90deg,#8e8faaa0 0 1px,transparent 1px 5px),linear-gradient(135deg,#cecadc,#797d9a);box-shadow:0 5px 0 #363e58,2px 8px 2px #0006;display:flex;align-items:center;padding:5px 10px;gap:12px}.hw-ssd>span{font:600 15px 'Segoe UI';color:#e4dcf7;text-shadow:0 1px #4c4d65}.hw-ssd>div{display:flex;gap:6px}.hw-ssd i{width:21px;height:24px;background:linear-gradient(#3e4056,#1b263c);border:1px solid #56566e;box-shadow:1px 2px #101a2b}.hw-ssd b{position:absolute;right:-6px;top:7px;bottom:7px;width:6px;background:repeating-linear-gradient(#c4a875 0 2px,#645675 2px 4px)}
.hw-io{display:flex;align-items:flex-end;gap:10px}.hw-usb{width:35px;padding:4px;display:grid;gap:5px;background:linear-gradient(120deg,#b6b4c5,#626b87);border:1px solid #c6c1d3;box-shadow:0 5px #1e2b43,2px 7px #0007;border-radius:2px}.hw-usb i{display:block;height:12px;background:#0e172b;border:2px solid #555f77;box-shadow:inset 0 -3px #9380c0}.hw-ethernet{height:33px;width:35px;padding:4px;background:linear-gradient(120deg,#c7c3d1,#7c849b);border:1px solid #d9d2df;box-shadow:0 5px #1d2941,2px 7px #0007;border-radius:2px}.hw-ethernet i{display:block;height:22px;background:repeating-linear-gradient(90deg,#c3a979 0 2px,#161e32 2px 4px);border:4px solid #202b40;border-bottom-width:8px}.hw-audio{display:flex;gap:5px;padding-bottom:3px}.hw-audio i{width:13px;height:13px;border:3px solid #b398c9;border-radius:50%;background:#0c172b;box-shadow:1px 4px #202841}.hw-audio i:nth-child(2){border-color:#859ec6}
@media(prefers-reduced-motion:no-preference){.gateway.is-entering .hw-fan i{animation:gpu-start 2s ease-out both}.gateway-apps:hover .hw-fan i{animation:gpu-start 1.5s linear infinite}@keyframes gpu-start{to{rotate:720deg}}}


/* Entrée isolée : aucun élément du site avant le choix d’un composant. */
body:has(.entry-screen):not(.gateway-entered):not(:has(#decouvrir-generation-app:target)){overflow:hidden}
.gateway.entry-screen{position:fixed;inset:0;z-index:1000000;min-height:0;padding:0;display:block;background:radial-gradient(ellipse at 50% 64%,#34225d88,transparent 57%),radial-gradient(ellipse at 30% 18%,#152e5055,transparent 60%),#070a13;overflow:hidden;isolation:isolate;}
body.gateway-entered .entry-screen,body:has(#decouvrir-generation-app:target) .entry-screen{display:none!important}
.entry-stage{position:absolute;inset:0;display:grid;place-items:center;perspective:1300px;overflow:hidden}
.entry-stage::before{content:'';position:absolute;inset:-15% -25%;background:url('/assets/experience/circuit-background.svg') center/cover no-repeat;transform:rotateX(35deg) scale(1.05);opacity:.65;pointer-events:none;mask-image:radial-gradient(ellipse at center,#000 20%,#0009 65%,transparent 90%)}
.entry-stage::after{content:'';position:absolute;width:75%;height:18%;left:12.5%;top:74%;border-radius:50%;background:#03040bd9;filter:blur(34px);pointer-events:none;z-index:0}
.entry-hardware{--entry-rx:34deg;--entry-ry:0deg;--entry-rz:0deg;position:relative;z-index:1;width:min(86vw,1120px,128svh);aspect-ratio:3/2;transform-style:preserve-3d;transform:rotateX(var(--entry-rx)) rotateY(var(--entry-ry)) rotateZ(var(--entry-rz));}
.entry-hardware::before{content:'';position:absolute;inset:4.5% 2.5% 3.8%;transform:translateZ(-10px);border:2px solid #6a647d;border-radius:12px;background:linear-gradient(130deg,#535267,#171e2e);box-shadow:0 34px 36px #000b;pointer-events:none;}
.entry-photo{width:100%;height:100%;display:block;object-fit:contain;pointer-events:none;user-select:none;filter:drop-shadow(0 22px 20px #0008);}
.entry-fallback-picture{display:contents}
.entry-hotspots{position:absolute;inset:0;transform:translateZ(1px)}
.entry-hotspot{position:absolute;display:flex;align-items:flex-end;justify-content:center;text-decoration:none;border:1px solid transparent;border-radius:8px;outline:0;transition:background .2s,border-color .2s,box-shadow .2s;touch-action:manipulation;}
.entry-hotspot:hover,.entry-hotspot:focus-visible{border-color:#c8adff;background:#ad7cff0c;box-shadow:inset 0 0 22px #b89ae622,0 0 16px #9274b944;outline:2px solid #b9a8ee;outline-offset:3px;}
.entry-label{display:flex;align-items:center;justify-content:center;gap:12px;max-width:100%;padding:9px 14px;background:#080c19eb;border:1px solid #8e7fa776;border-radius:4px;color:#f2eaff;box-shadow:0 3px 12px #0009;font:500 clamp(11px,1.3vw,17px)/1.25 'Segoe UI',sans-serif;white-space:nowrap;letter-spacing:-.015em}
.entry-label b{color:#cfb9fa;font-weight:400}.entry-hotspot:hover .entry-label,.entry-hotspot:focus-visible .entry-label{background:#c8b0f2;color:#21142f}.entry-hotspot:hover .entry-label b,.entry-hotspot:focus-visible .entry-label b{color:#4a3265}
.entry-core{left:38.5%;top:28%;width:21%;height:32%;align-items:center;border-radius:12px;}
.entry-core-label{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:13px;}
.entry-core-label>img{width:clamp(25px,3.6vw,45px);height:auto;border-radius:8px;box-shadow:0 2px 5px #30384944;}
.v5 .entry-core #gateway-title{font:600 clamp(16px,2.4vw,31px)/1.12 'Segoe UI',sans-serif;letter-spacing:-.06em;white-space:normal;color:#303541;margin:0;text-shadow:0 1px #ffffff77;}
.entry-core-label>span:last-child{font:clamp(6px,.66vw,9px)/1.6 monospace;color:#5e5968;letter-spacing:.09em}
.entry-ram{left:7%;top:10%;width:17%;height:50%;padding-bottom:4%}.entry-gpu{left:71%;top:12%;width:23%;height:57%;padding-bottom:3%}.entry-ssd{left:5%;top:72%;width:26%;height:17%;padding-bottom:1%}.entry-io{left:67%;top:76%;width:28%;height:19%;padding-bottom:1%}
.entry-skip{position:absolute;bottom:20px;right:25px;background:transparent;border:1px solid #8b7e9e66;border-radius:5px;color:#bbb1c9;padding:10px 15px;min-height:40px;font:11px 'Segoe UI';cursor:pointer}
.entry-screen.is-leaving .entry-hardware{transform:rotateX(var(--entry-rx)) rotateY(var(--entry-ry)) rotateZ(var(--entry-rz)) scale(1.16);opacity:0;transition:transform .22s,opacity .22s}
@media(max-width:600px){.entry-hardware{width:98vw}.entry-label{font-size:10px;gap:3px;padding:6px 5px}.entry-core-label{gap:6px}.v5 .entry-core #gateway-title{font-size:clamp(12px,4vw,21px);max-width:90px;line-height:1.07}.entry-core-label>img{width:23px}.entry-core-label>span:last-child{font-size:5px;letter-spacing:0}.entry-core{height:34%;top:27%}.entry-ssd,.entry-io{min-height:44px}.entry-skip{bottom:15px;right:15px}}
@media(max-width:600px){.entry-hardware{width:96vw;--entry-rx:24deg;--entry-ry:0deg;--entry-rz:0deg}.entry-stage::after{top:62%;height:10%}.entry-stage::before{inset:0 -65%;opacity:.5}}
@media(prefers-reduced-motion:reduce){.entry-screen *{animation:none!important;transition:none!important}.entry-brand-intro,.entry-skip{display:none!important}}
/* Real-time 3D replaces the photo only after a successful WebGL frame. */
@media(max-width:767px){
 .entry-screen .entry-stage,.entry-screen .entry-3d-controls{display:none!important}
 .gateway.entry-screen:not(.is-brand-intro){display:none}
 body:has(.entry-screen):not(:has(.entry-screen.is-brand-intro)){overflow:auto}
 .is-brand-intro .entry-brand-intro{animation-duration:1.8s!important}
}
.entry-brand-intro{display:none;position:absolute;inset:0;z-index:6;flex-direction:column;align-items:center;justify-content:center;gap:24px;pointer-events:none;background:radial-gradient(ellipse at center,#37254f66,transparent 52%)}
.entry-brand-intro img{width:clamp(85px,9vw,116px);height:auto;filter:drop-shadow(0 0 28px #9271dc66)}
.entry-brand-intro>span{font:600 clamp(30px,4vw,54px)/1.1 'Segoe UI',sans-serif;color:#f1ebff;letter-spacing:-.055em}
@media(prefers-reduced-motion:no-preference){
 .is-brand-intro .entry-brand-intro{display:flex;animation:brand-intro 2.6s ease both}
 .is-brand-intro .entry-stage{animation:brand-reveal-board 2.6s ease both;pointer-events:none}
 .is-brand-intro .entry-3d-controls{visibility:hidden}
 @keyframes brand-intro{0%{opacity:0;transform:translateY(16px) scale(.88)}20%,52%{opacity:1;transform:translateY(0) scale(1)}82%,100%{opacity:0;transform:translateY(-8px) scale(1.07)}}
 @keyframes brand-reveal-board{0%,48%{opacity:0;visibility:hidden}49%{visibility:visible;opacity:0}100%{opacity:1;visibility:visible}}
}
.entry-webgl{position:absolute;inset:0;width:100%;height:100%;z-index:2;display:none;touch-action:none;cursor:grab}
.has-webgl .entry-webgl{display:block}.has-webgl .entry-hardware{display:none!important}.has-webgl .entry-stage::after{display:none}
.has-webgl .projected-links{position:absolute;inset:0;z-index:3;transform:none;pointer-events:none;animation:none!important}
.has-webgl .entry-hotspot{transform:translate(-50%,-50%);pointer-events:auto;width:auto;height:auto;min-height:44px;padding:0;border-radius:6px;align-items:center}
.has-webgl .entry-core{width:185px;min-height:120px;padding:10px}
.has-webgl .entry-core-label{gap:9px}.v5 .has-webgl #gateway-title{font-size:25px;max-width:none;line-height:1.12;letter-spacing:-.055em;color:#192034;text-shadow:none}
.has-webgl .entry-core-label>img{width:35px}.has-webgl .entry-core-label>span:last-child{font-size:7px}
.has-webgl .entry-hotspot:hover,.has-webgl .entry-hotspot:focus-visible{background:#9b7adb18;box-shadow:0 0 22px #a783fa33}
.entry-label,.has-webgl .entry-label{position:relative;isolation:isolate;min-height:54px;gap:16px;padding:10px 11px 10px 18px;border:1px solid #bda5e466;border-radius:15px;background:linear-gradient(135deg,#53506990 0%,#25283bef 44%,#171b2deb 100%);color:#f7f2ff;font-size:15px;font-weight:600;letter-spacing:-.02em;box-shadow:inset 0 1px 0 #ffffff25,inset 0 -1px 0 #0005,0 3px 0 #0a0c1780,0 12px 24px #0006;backdrop-filter:blur(16px) saturate(1.2);transition:border-color .2s,box-shadow .2s,background .2s}
.entry-label::before{content:'';width:5px;height:5px;flex:none;border-radius:50%;background:#c1a1fb;box-shadow:0 0 8px #b692e9a0}
.entry-label b{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:10px;border:1px solid #c3a5ee55;background:linear-gradient(145deg,#a68ac944,#74609922);color:#e5d4ff;font:400 18px/1 'Segoe UI',sans-serif;box-shadow:inset 0 1px 0 #fff2;transition:color .2s,background .2s,transform .2s}
.entry-hotspot:hover .entry-label,.entry-hotspot:focus-visible .entry-label{color:#fff;background:linear-gradient(135deg,#635578e8,#302944f5 60%,#20233af5);border-color:#d3b5f3bf;box-shadow:inset 0 1px 0 #ffffff35,0 3px 0 #100c2180,0 14px 30px #0007,0 0 24px #9b70d32b}
.entry-hotspot:hover .entry-label b,.entry-hotspot:focus-visible .entry-label b{color:#22182f;background:#d4b8f5;transform:translate(1px,-1px)}
.has-webgl .entry-hotspot:not(.entry-core){border:0;border-radius:15px;background:none;box-shadow:none;outline:none}
.has-webgl .entry-hotspot:not(.entry-core):focus-visible .entry-label{outline:2px solid #e8d6ff;outline-offset:4px}
@media(min-width:768px) and (max-width:1000px){.has-webgl .entry-label{font-size:13px;gap:9px;padding-left:12px;min-height:50px}.has-webgl .entry-label b{width:27px;height:27px}}
.entry-3d-controls{position:absolute;z-index:4;bottom:24px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:22px;color:#a7a1b8;font:11px/1.5 'Segoe UI',sans-serif;pointer-events:none}
.entry-3d-controls[hidden]{display:none}.entry-3d-controls button{pointer-events:auto;border:1px solid #83709255;border-radius:5px;color:#d3c9e7;background:#0c102099;padding:8px 12px;min-height:40px;cursor:pointer;font:inherit}
.entry-3d-controls button:hover,.entry-3d-controls button:focus-visible{border-color:#c2a6ef;color:white}.entry-skip{z-index:5}

@media(max-width:600px){.has-webgl .entry-core{width:85px;min-height:74px;padding:3px}.v5 .has-webgl #gateway-title{font-size:13px;max-width:80px}.has-webgl .entry-core-label>img{width:21px}.has-webgl .entry-core-label{gap:3px}.has-webgl .entry-core-label>span:last-child{display:none}.has-webgl .entry-label{font-size:10px;padding:7px 6px;gap:3px}.entry-3d-controls{flex-wrap:wrap;gap:12px;bottom:25px;padding:0 22px}.entry-3d-controls>span{flex-basis:100%;text-align:center;font-size:10px}}
