/* Nexus — the shared DIDATEC Campus identity. */
.refonte.nexus{--ink:#eef5f5;--paper:#081118;--cream:#081118;--lime:#c7ff6b;--line:#2b3d45;--muted:#a5b7c1;--lb-ink:#eef5f5;--lb-muted:#a5b7c1;--lb-line:#2b3d45;--lb-navy:#0b1821;background:#081118;color:#eef5f5;color-scheme:dark;font-synthesis:none}
.nexus ::selection{background:#c7ff6b;color:#122012}
.nexus a:focus-visible,.nexus button:focus-visible,.nexus summary:focus-visible,.nexus input:focus-visible,.nexus select:focus-visible,.nexus textarea:focus-visible{outline:3px solid #c7ff6b;outline-offset:5px}
.nexus .skip{background:#c7ff6b;color:#122012}
.nexus .header{background:#081118ed;border-bottom:1px solid var(--line);backdrop-filter:blur(16px);padding-inline:4%;min-height:84px;gap:26px}
.nexus .header .campus-logo{width:169px;background:#fff;box-shadow:0 0 0 6px #fff}
.nexus .header nav{font-size:12px;gap:26px}
.nexus .header nav a:hover,.nexus .header nav a[aria-current=page]{color:#c7ff6b;border-color:#c7ff6b}
.nexus .header nav .nav-fgas{color:#c7ff6b;background:#c7ff6b09;border-color:#66824d}
.nexus .header .header-cta{display:none}
.nexus .header-login{background:transparent;border-color:#66824d;color:#eef5f5;padding:12px 16px;font-size:12px;gap:22px}
.nexus .header-login:hover{background:#c7ff6b;color:#122012;border-color:#c7ff6b}
.nexus .menu-toggle{color:#eef5f5}
.nexus .refonte-footer{background:#081118;border-color:var(--line);padding-block:40px}
.nexus .refonte-footer .campus-logo{background:#fff;box-shadow:0 0 0 6px #fff;width:150px}
.nexus .refonte-footer p,.nexus .refonte-footer small{color:var(--muted)}
.nexus .refonte-footer nav a:hover{color:#c7ff6b}
.nexus h1,.nexus h2,.nexus h3{font-weight:550}
.nexus h1 em,.nexus h2 em,.nexus .offers h2 em,.nexus .catalog-section h2 em,.nexus .future-section h2 em{color:#c7ff6b;font-style:normal}
.nexus .section{padding-block:105px}
.nexus .section-heading{gap:65px}
.nexus .eyebrow,.nexus .section-label,.nexus .lb-eyebrow,.nexus .lb-panel-intro .lb-eyebrow,.nexus.pricing-page .eyebrow{color:#c7ff6b}
.nexus .button,.nexus .lb-button,.nexus .fg-button{transition:background .2s,transform .2s,border-color .2s}
.nexus .button:hover,.nexus .lb-button:hover,.nexus .fg-button:hover{transform:translateY(-2px)}
.nexus .button.lime,.nexus .button.light,.nexus .lb-button,.nexus .fg-button,.nexus .contact-submit,.nexus .fg-film-play{background:#c7ff6b;color:#122012;border-color:#c7ff6b}
.nexus .button.lime:hover,.nexus .button.light:hover,.nexus .lb-button:hover,.nexus .fg-button:hover,.nexus .contact-submit:hover,.nexus .fg-film-play:hover{background:#dcff9f;color:#122012}
.nexus .button.outline,.nexus .lb-button--dark{background:transparent;color:#eef5f5;border:1px solid #50656e}
.nexus .button.outline:hover,.nexus .lb-button--dark:hover{border-color:#c7ff6b;background:#142a2c;color:#c7ff6b}
.nexus .text-link{color:inherit}
/* Full-bleed motion keeps all eleven original DIDATEC ranges. */
.nexus .hero.hero-gammes{background:#081118;min-height:760px;overflow:hidden}
.nexus .hero-art{background:#081118}
.nexus .hero-gammes:before{background:linear-gradient(90deg,#071117fa,#071117e6 28%,#0711174d 62%,#07111705),linear-gradient(0deg,#081118 0%,transparent 28%,#08111830)}
.nexus .hero-gammes .hero-main{padding:80px 5% 55px;min-height:635px;gap:40px}
.nexus .hero-gammes .hero-copy{max-width:800px;padding:0}
.nexus .hero-gammes h1{font-size:clamp(70px,8.4vw,136px);line-height:.97;letter-spacing:-.055em;margin-top:25px}
.nexus .hero-gammes h1 em{font-weight:430;font-size:.82em;letter-spacing:-.07em;white-space:nowrap;color:#c7ff6b}
.nexus .hero-gammes .eyebrow{font-size:10px;color:#bcd4d5;letter-spacing:.17em}
.nexus .hero-gammes .status-dot{background:#c7ff6b;box-shadow:0 0 18px #c7ff6b}
.nexus .hero-gammes .lead{font-size:20px;line-height:1.65;max-width:530px;color:#b5c9cf;margin-top:30px;text-shadow:none}
.nexus .hero-gammes .actions{margin:38px 0 0;gap:28px}
.nexus .hero-gammes .actions .button{padding:16px 23px;font-size:14px;min-height:55px}
.nexus .nexus-watch{display:inline-flex;align-items:center;gap:13px;background:none;border:0;border-bottom:1px solid #526974;padding:16px 0;font:inherit;font-size:12px;cursor:pointer;line-height:1.4}
.nexus-watch>span{color:#c7ff6b;font-size:12px}
.nexus .gamme-caption{position:relative;padding:20px 24px;text-align:left;border-left:1px solid #b4eaaa77;background:#0d202461;backdrop-filter:blur(6px);text-shadow:none;max-width:270px;align-self:center;margin:60px 0 0}
.nexus .gamme-caption .crosshair{position:absolute;left:-13px;top:-30px;color:#c7ff6b;font-size:36px;font-weight:200;line-height:1;margin:0}
.nexus .gamme-caption strong{display:block;font-size:12px;letter-spacing:.16em;line-height:1.8;font-weight:500}
.nexus .gamme-caption p{font-size:11px;color:#b5c9cf;line-height:1.7;margin-top:18px;text-wrap:initial}
.nexus .gamme-caption>span:last-child{font-size:8px;color:#bdcbd1}
.nexus .hero-gammes .hero-bottom{margin:0 5%;border-color:#536d7b66;min-height:125px}
.nexus .gammes-scroll{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#a5b7c1}
.nexus .gammes-scroll>span{color:#c7ff6b}
.nexus .world-picker label{color:#b5c9cf}
.nexus .world-picker label span{color:#c7ff6b}
.nexus .world-picker select,.nexus .world-picker select option{background:#0d2028;color:#eef5f5;border-color:#45606e}
.nexus .world-controls button{background:#0d2028;color:#eef5f5;border-color:#45606e}
.nexus .world-controls button:hover,.nexus .hero-gammes[data-rotation=paused] #world-play{background:#c7ff6b;color:#122012;border-color:#c7ff6b}
.nexus-grid{position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#99f7e309 1px,transparent 1px),linear-gradient(90deg,#99f7e309 1px,transparent 1px);background-size:75px 75px}
.nexus-orbit{position:absolute;z-index:-1;pointer-events:none;border:1px solid #b8fff029;border-radius:50%;right:-13%;top:-18%;width:950px;height:950px;transform:rotateX(65deg) rotate(-22deg)}
.nexus-orbit--two{width:1250px;height:1250px;right:-23%;top:-35%;opacity:.6}
.nexus .campus-numbers{background:#0d1c24;border-color:#2b3d45;padding:30px 5%;gap:28px}
.nexus .campus-numbers>a{border-color:#2b3d45}
.nexus .campus-numbers strong{color:#c7ff6b;font-size:47px}
.nexus .numbers-note{color:#a5b7c1}
/* A spacious pedagogical introduction, followed by the two independent catalogues. */
.nexus .teaching{background:#081118;border-color:#2b3d45}
.nexus .teaching-inner{grid-template-columns:1.15fr 1fr;gap:90px;padding-block:120px}
.nexus .teaching-intro h2{font-size:clamp(38px,4vw,59px)}
.nexus .teaching-intro>p:not(.eyebrow){color:#a5b7c1;font-size:15px;line-height:1.9}
.nexus .teaching-intro .button{background:none;color:#eef5f5;border:1px solid #50656e}
.nexus .teaching-path{border-left:1px solid #5d7941;padding-left:35px}
.nexus .teaching-path article{border-color:#2b3d45;gap:30px}
.nexus .teaching-path article>span{color:#c7ff6b}
.nexus .teaching-path h3{font-size:34px}
.nexus .teaching-path p{color:#a5b7c1;font-size:13px;line-height:1.8}
.nexus .teaching-path .tags span{background:transparent;border:0;padding:0;color:#c7ff6b;text-transform:uppercase;letter-spacing:.08em;font-size:9px}
.nexus .audiences{padding-bottom:75px}
.nexus .audiences article{border-color:#2b3d45}
.nexus .audiences article>span{color:#c7ff6b}
.nexus .audiences p{color:#a5b7c1}
.nexus .labo-section{background:#0c1b23;border-color:#2b3d45}
.nexus .atelier-section{background:#081118;border-color:#2b3d45}
.nexus .catalog-section>.section{padding-block:105px}
.nexus .catalog-section h2{font-size:clamp(38px,4.1vw,62px)}
.nexus .journey{border-color:#2b3d45;color:#c7ff6b}
.nexus .journey b{border-color:#50656e}
.nexus .count-badge{color:#c7ff6b;border-color:#66824d}
.nexus .filters button{background:none;color:#a5b7c1;border-color:#2b3d45}
.nexus .filters button[aria-pressed=true]{background:#c7ff6b;color:#122012;border-color:#c7ff6b}
.nexus .filters button[aria-pressed=true] span{color:#122012}
.nexus .machine-grid{gap:40px 26px}
.nexus .machine{padding:0;background:transparent;border:0}
.nexus .machine-picture{border:1px solid #3b5057;background:#12242d;overflow:hidden}
.nexus .machine-picture img{aspect-ratio:1.58;transition:transform .6s cubic-bezier(.2,.6,.2,1)}
.nexus .labo-section .machine-picture img{background:#12242d}
.nexus .machine-picture:hover img{transform:scale(1.035)}
.nexus .machine-picture>span{background:#102028de;border:0;color:#eef5f5}
.nexus .play-pill{background:#c7ff6b;color:#122012;padding:8px 12px}
.nexus .play-pill i{color:#122012}
.nexus .machine-title{padding:0;margin-top:20px}
.nexus .machine-title h3{font-weight:450;font-size:34px}
.nexus .machine-title .available{border:0;color:#c7ff6b;padding-right:0}
.nexus .machine h4{margin-inline:0;font-size:15px;min-height:0;font-weight:450}
.nexus .machine>p{margin-inline:0;color:#a5b7c1;font-size:13px}
.nexus .card-link{padding-inline:0;border-color:#2b3d45;font-size:12px}
.nexus .card-link span,.nexus .card-link:hover{color:#c7ff6b}
.nexus .coming-preview,.nexus .coming-preview>div a{border-color:#2b3d45}
.nexus .coming-preview>div a{background:#0d1c24}
.nexus .coming-preview a:hover{border-color:#c7ff6b;color:#c7ff6b}
.nexus .future-card{background:#0d1c24;border-color:#2b3d45}
.nexus .future-card>div,.nexus .lb-machine-preview--coming,.nexus .fg-machine-image{background:#edf1f0;color-scheme:light}
.nexus .future-card>div>span,.nexus .lb-status--coming{background:#20313b;color:#dde6eb;border-color:#527080}
.nexus .future-card:hover{border-color:#c7ff6b}
/* F-GAS III deliberately interrupts the dark rhythm. */
.nexus .fgas-spotlight,.nexus .fgas-offer-callout{background:#c7ff6b;color:#102318;--ink:#102318;--muted:#3b563a;--line:#789b5c}
.nexus .fgas-spotlight h2 em{color:#47703b}
.nexus .fgas-spotlight .eyebrow,.nexus .fgas-spotlight p:not(.eyebrow),.nexus .fgas-offer-callout .eyebrow{color:#304e2f}
.nexus .fgas-spotlight .button{background:#102b21;color:#d9ff9c;border-color:#102b21}
.nexus .fgas-spotlight .button:hover{background:#234e32}
.nexus .fgas-spotlight-image{background:#edf5df;border-color:#edf5df;transform:rotate(2deg);transition:transform .3s}
.nexus .fgas-spotlight-image:hover{transform:rotate(0)}
.nexus .fgas-spotlight-image>span{color:#102318}
.nexus .spotlight-tags{color:#304e2f}
.nexus .spotlight-tags>span{border-color:#789b5c}
.nexus .fgas-spotlight a:focus-visible,.nexus .fgas-offer-callout a:focus-visible{outline-color:#102318}
.nexus .fgas-offer-callout .text-link{color:#102318}
/* Offers, calculator and comparison. */
.nexus .offer-grid{border:1px solid #2b3d45;gap:0}
.nexus .offer{background:transparent;border:0;padding:35px 30px}
.nexus .offer+.offer{border-left:1px solid #2b3d45}
.nexus .offer.featured{background:#142a2c;color:#eef5f5}
.nexus .offer-label{border-color:#2b3d45;color:#eef5f5}
.nexus .offer.featured .offer-label{color:#c7ff6b}
.nexus .offer-label>span{color:#a5b7c1}
.nexus .offer .price strong{color:#eef5f5}
.nexus .offer .unit,.nexus .offer .price>span,.nexus .offer>p:not(.annual),.nexus .offer .annual span{color:#a5b7c1}
.nexus .offer .annual,.nexus .offer ul{border-color:#2b3d45;color:#d9e4e8}
.nexus .offer li:before{color:#c7ff6b}
.nexus .final-cta{background:radial-gradient(ellipse at 50% 120%,#264534,#081118 65%);border-top:1px solid #2b3d45;padding-block:110px}
.nexus .final-cta h2{font-size:clamp(44px,5.7vw,87px)}
.nexus.pricing-page .status.yes{background:#c7ff6b12;color:#c7ff6b;border-color:#66824d}
.nexus.pricing-page .status.no{background:none;color:#a5b7c1}
.nexus.pricing-page .status.partial{background:#403120;color:#efc99b}
.nexus.pricing-page .family-title strong,.nexus.pricing-page .budget-month{color:#eef5f5}
.nexus.pricing-page .budget-mode button{background:transparent;color:#b5c9cf;border-color:#45606e}
.nexus.pricing-page .budget-mode button[aria-pressed=true]{background:#c7ff6b;color:#122012;border-color:#c7ff6b}
.nexus.pricing-page .budget-result{background:#142a2c;border-color:#55764e}
.nexus.pricing-page input{background:#081118;color:#eef5f5;border-color:#45606e}
.nexus.pricing-page .budget-error{background:#392323;color:#ffc0b3;border-color:#b96756}
/* Three teaching stages, galleries and the original videos. */
.nexus .catalog-hero,.nexus .lb-detail-hero,.nexus .pricing-intro,.nexus .fg-hero{background:radial-gradient(ellipse at 90% 0%,#183332,#0b1821 65%);border-bottom:1px solid #2b3d45}
.nexus .catalog-hero h1,.nexus .pricing-intro h1{font-size:clamp(44px,5.1vw,78px)}
.nexus .catalog-hero figcaption,.nexus .lb-machine-preview figcaption{background:#12242d;color:#b5c9cf}
.nexus .catalog-hero figure,.nexus .lb-machine-preview{border-color:#3b5057}
.nexus .lb-machine-preview--coming figcaption{background:#12242d;color:#b5c9cf}
.nexus .lb-detail-hero .lb-tags>span{background:#172c35;color:#c7ff6b;border-color:#3b5057}
.nexus .lb-status{background:#c7ff6b;color:#122012}
.nexus .lb-status--coming{background:#20313b;color:#dde6eb}
.nexus .lb-tabs{background:#0d1c24;border-color:#3b5057}
.nexus .lb-tabs>a{color:#a5b7c1}
.nexus .lb-tabs>a[aria-selected=true]{background:#c7ff6b;color:#122012}
.nexus .lb-tabs--tools{background:transparent}
.nexus .lb-tabs--tools>a{background:#0d1c24;border-color:#3b5057}
.nexus .lb-learning{border-left:2px solid #66824d;background:#142a2c}
.nexus .lb-learning .lb-eyebrow{color:#c7ff6b}
.nexus .lb-learning p:not(.lb-eyebrow){color:#eef5f5}
.nexus .campus-demo{background:#0d1c24;border-color:#3b5057}
.nexus .campus-demo video{background:#081118}
.nexus .campus-demo-play{color:#fff;background:linear-gradient(transparent,#08111888)}
.nexus .campus-demo-play>span{background:#c7ff6b;color:#122012}
.nexus .campus-demo-chapters{background:#2b3d45;border-color:#2b3d45}
.nexus .campus-demo-chapters button{background:#12242d;color:#d9e4e8}
.nexus .campus-demo-chapters button span{color:#c7ff6b}
.nexus .campus-demo-chapters button[aria-current],.nexus .campus-demo-chapters button:hover{background:#234333;color:#fff}
.nexus .campus-demo-transcript{color:#a5b7c1}
.nexus .sim-gallery-tabs button{color:#b5c9cf;border-color:#45606e}
.nexus .sim-gallery-tabs button[aria-pressed=true]{background:#c7ff6b;color:#122012;border-color:#c7ff6b}
.nexus #video-dialog{background:#0d1c24;color:#eef5f5;border:1px solid #3b5057}
.nexus #video-tabs button{color:#b5c9cf;border-color:#45606e}
.nexus #video-tabs button[aria-selected=true]{background:#c7ff6b;color:#122012;border-color:#c7ff6b}
.nexus #video-chapters button{background:#12242d;color:#d9e4e8}
.nexus #video-chapters button span{color:#c7ff6b}
.nexus #video-chapters button[aria-current=true]{background:#234333;border-color:#66824d}
.nexus .dialog-close{color:#eef5f5}
.nexus .fg-preview-footer>b,.nexus .fg-session .fg-button{background:#c7ff6b;color:#122012}
.nexus .fg-machine-image>span{color:#18382f;background:#edf1f0;padding:5px 8px}
.nexus .fg-regulation thead th{background:#172c35;color:#d9e4e8}
.nexus .fg-regulation tbody th{color:#c7ff6b}
.nexus .fg-section p,.nexus .fg-regulation td,.nexus .fg-session-copy>p:not(.section-label){color:#a5b7c1}
.nexus .fg-max{border-color:#66824d}
/* The existing contact service keeps the same form and validation. */
.nexus.contact-page{background:#081118}
.nexus .contact-card,.nexus .max-team-collective{background:#0d1c24;border-color:#2b3d45}
.nexus .contact-intro h1 em,.nexus .team-heading h2 em{color:#c7ff6b}
.nexus .field input,.nexus .field textarea,.nexus .field select{background:#081118;color:#eef5f5;border:1px solid #45606e;border-radius:0}
.nexus .field input:focus,.nexus .field textarea:focus,.nexus .field select:focus{background:#10212a;outline-color:#c7ff6b}
.nexus .field [aria-invalid=true]{background:#2d1b1c;border-color:#de947c}
.nexus .field-error{color:#ffc0b3}
.nexus .form-status{background:#392323;color:#ffc0b3;border-color:#b96756}
.nexus .contact-success{color:#eef5f5}
.nexus .success-icon{background:#c7ff6b;color:#122012}
.nexus .contact-submit{border-radius:0}
.nexus .max-team-stage{background:radial-gradient(ellipse at 50% 70%,#203c42,#0d1c24 78%)}
.nexus .contact-signature .signature-mark{background:#fff}
.nexus .contact-privacy a,.nexus .team-closing a{color:#c7ff6b}
@media(min-width:1600px){.nexus .hero-gammes .hero-copy{max-width:950px}.nexus .hero-gammes h1{font-size:136px}}
@media(max-width:1180px){.nexus .header{gap:18px;padding-inline:3%}.nexus .header nav{gap:15px;font-size:11px}.nexus .header .campus-logo{width:145px}.nexus .header-login{font-size:11px;gap:12px;padding:10px 12px}.nexus .hero-gammes h1{font-size:100px}.nexus .hero-gammes .hero-copy{max-width:650px}.nexus .gamme-caption{max-width:200px;padding:15px}.nexus .gamme-caption strong{font-size:10px}.nexus .gamme-caption p{font-size:10px}.nexus .teaching-inner{gap:45px;padding-block:100px}.nexus .offer{padding:30px 22px}.nexus .section{padding-block:85px}}
@media(max-width:980px){.nexus .header{padding:12px 5%;gap:0}.nexus .header nav{padding:18px 0 8px;gap:0}.nexus .header-login{margin-top:12px}.nexus .header nav a[aria-current=page]{background:#172c35;color:#c7ff6b}.nexus .header nav .nav-fgas{background:#c7ff6b09}.nexus .hero-gammes .hero-main{padding-top:65px}.nexus .gamme-caption{display:none}.nexus .teaching-inner{grid-template-columns:1fr;gap:55px}.nexus .teaching-path{max-width:650px}.nexus .hero-gammes .hero-copy{max-width:750px}.nexus .hero-gammes h1{font-size:100px}.nexus .section-heading{gap:35px}}
@media(max-width:760px){.nexus .header{padding:11px 6%;min-height:0}.nexus .header .campus-logo{width:140px}.nexus .header-login{background:#c7ff6b;color:#122012;border-color:#c7ff6b;min-height:38px;padding:8px;font-size:11px}.nexus .hero.hero-gammes{min-height:0}.nexus .hero-gammes .hero-main{padding:55px 6% 42px;min-height:490px;display:block}.nexus .hero-gammes h1{font-size:clamp(55px,12vw,90px);margin-top:25px}.nexus .hero-gammes h1 em{font-size:.75em;white-space:nowrap}.nexus .hero-gammes .eyebrow{font-size:8px;max-width:300px}.nexus .hero-gammes .lead{font-size:17px;max-width:390px;margin-top:25px}.nexus .hero-gammes .actions{display:flex;flex-direction:column;align-items:flex-start;gap:15px;margin-top:28px}.nexus .hero-gammes .actions .button{font-size:12px;padding:14px 17px;min-height:50px}.nexus .nexus-watch{font-size:11px;min-height:40px;padding:10px 0}.nexus .hero-gammes:before{background:linear-gradient(90deg,#071117ed,#071117aa 45%,#07111722),linear-gradient(0deg,#081118,transparent 45%)}.nexus .hero-gammes .hero-bottom{margin:0 6%;min-height:125px}.nexus .world-picker label{font-size:8px}.nexus .world-picker select{font-size:12px}.nexus-orbit{display:none}.nexus .campus-numbers{padding:26px 6%;gap:14px}.nexus .campus-numbers strong{font-size:34px}.nexus .campus-numbers .numbers-note{display:none}.nexus .section,.nexus .catalog-section>.section{padding-block:65px}.nexus .teaching-inner{padding-block:70px;gap:40px}.nexus .teaching-intro h2{font-size:37px}.nexus .teaching-intro>p:not(.eyebrow){font-size:14px}.nexus .teaching-path{padding-left:22px;margin-top:0}.nexus .teaching-path article{gap:20px}.nexus .teaching-path h3{font-size:29px}.nexus .audiences{padding-bottom:45px}.nexus .catalog-section h2{font-size:36px}.nexus .machine-grid{gap:30px 18px}.nexus .machine{padding:0}.nexus .machine-title h3{font-size:33px}.nexus .machine h4{font-size:15px}.nexus .machine>p{font-size:13px}.nexus .offer{padding:27px}.nexus .offer+.offer{border-left:0;border-top:1px solid #2b3d45}.nexus .offer-grid{gap:0}.nexus .offer h3{font-size:36px}.nexus .fgas-spotlight-image{transform:none}.nexus .fgas-spotlight h2{font-size:35px}.nexus .final-cta{padding-block:70px}.nexus .final-cta h2{font-size:43px}.nexus .catalog-hero h1,.nexus .pricing-intro h1{font-size:clamp(35px,7.8vw,49px)}.nexus .refonte-footer{padding-block:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nexus *,.nexus *:before,.nexus *:after{animation:none!important;transition:none!important}.nexus .button:hover,.nexus .lb-button:hover,.nexus .fg-button:hover,.nexus .machine-picture:hover img{transform:none}}
.nexus .fg-finish .fg-button{background:#c7ff6b;color:#122012}
