:root { --bg:#05090f; --text:#f4f8ff; --muted:#9eb2c7; --blue:#287cff; --line:rgba(178,203,236,.15); }
html { scroll-padding-top:100px; }
body { background:#05090f; }
body::before { display:none; }
button,select,input,textarea { font:inherit; }
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible { outline:3px solid #a5d3ff; outline-offset:5px; }
.container { width:min(1240px,calc(100% - 80px)); }
.skip-link { position:fixed; left:24px; top:-80px; z-index:1000; background:#fff; color:#05090f; padding:12px 18px; border-radius:8px; }
.skip-link:focus { top:14px; }
.reveal,.reveal.show { opacity:1; transform:none; transition:none; }
.nav { background:rgba(5,9,15,.94); border-bottom:1px solid var(--line); backdrop-filter:blur(18px); }
.nav-inner { height:86px; }
.logo { width:136px; }
.nav-links { gap:23px; font-size:13px; }
.nav-links a { padding:12px 0; }
.nav-links a:hover { color:#9ccaff; }
.lang { border-radius:8px; padding:8px 10px; background:#0b1522; }
.lang span { display:none; }
.lang select { padding:4px; min-width:83px; font-size:12px; }
.menu { border:1px solid var(--line); padding:9px 12px; border-radius:6px; font-size:12px; }
.section { padding:100px 0; border-color:var(--line); }
.kicker { font-size:14px; letter-spacing:.02em; text-transform:none; color:#94bce9; margin-bottom:22px; }
h1,h2,h3,.rc-name,.v41-wordmark { font-family:Bahnschrift,'Arial',sans-serif; }
h2 { font-size:clamp(36px,4.9vw,68px); letter-spacing:-.045em; line-height:1.04; max-width:1000px; }
.lead { font-size:18px; line-height:1.7; }
.btn { border-radius:7px; padding:0 22px; font-size:13px; height:49px; }
.btn.primary { background:#287cff; box-shadow:none; }
.btn.primary:hover { background:#4b91ff; }
.v41-hero { position:relative; padding:150px 0 54px; overflow:hidden; min-height:830px; background:radial-gradient(ellipse at 100% 40%,rgba(30,91,169,.17),transparent 55%),#05090f; }
.v41-hero-grid { display:grid; grid-template-columns:1fr 1.02fr; gap:56px; align-items:center; }
.v41-hero h1 { font-size:clamp(56px,4.8vw,72px); line-height:1.02; letter-spacing:-.055em; max-width:650px; margin:26px 0; }
.v41-hero .hero-copy { font-size:18px; line-height:1.7; max-width:560px; color:#adbdce; }
.v41-hero-label { display:flex; align-items:center; gap:12px; font-size:14px; color:#b7cae0; }
.v41-hero-label::before { content:''; width:30px; height:2px; background:#287cff; }
.v41-hero .hero-actions { margin-top:30px; }
.v41-film { position:relative; min-height:490px; border:1px solid rgba(125,174,238,.24); background:#101925; border-radius:13px; overflow:hidden; isolation:isolate; display:flex; flex-direction:column; justify-content:flex-end; }
.v41-film-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:37% center; z-index:-2; }
.v41-film::before { content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(6,11,19,.15) 0%,rgba(6,11,19,.34) 40%,rgba(6,11,19,.97) 100%); z-index:-1; }
.v41-film-top { position:absolute; left:26px; right:26px; top:24px; display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:12px; color:#fff; }
.v41-film-status { padding:7px 11px; background:rgba(5,9,15,.78); border:1px solid rgba(255,255,255,.25); border-radius:5px; font-size:11px; }
.v41-film-copy { padding:32px 30px; }
.v41-wordmark { font-size:clamp(42px,4.5vw,64px); line-height:1; letter-spacing:-.03em; margin-bottom:14px; font-weight:600; }
.v41-film-copy h2 { font-family:inherit; font-size:19px; letter-spacing:0; line-height:1.4; margin:0 0 14px; max-width:350px; }
.v41-film-copy p { font-size:12px; line-height:1.6; color:#a6b9cf; margin:0 0 16px; }
.v41-film-link { display:inline-flex; gap:10px; align-items:center; font-size:12px; padding:8px 0; color:#c7e1ff; }
.v41-film-link svg { width:16px; height:16px; }
.v41-hero-footer { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-top:40px; margin-top:56px; border-top:1px solid var(--line); color:#9baec3; font-size:12px; }
.v41-hero-footer .v41-flow { display:flex; align-items:center; flex-wrap:wrap; gap:18px; }
.v41-hero-footer .v41-flow span { color:#dfedff; }
.v41-hero-footer svg { width:18px; height:18px; color:#6489b6; }
.v41-scroll { display:flex; align-items:center; gap:10px; padding:8px 0; color:#b7cbe0; }
.v41-thesis { background:#07101b; }
.v41-thesis-grid { display:grid; grid-template-columns:1.7fr 1fr; gap:72px; align-items:end; }
.v41-thesis h2 { font-size:clamp(44px,5.6vw,80px); max-width:780px; margin-bottom:0; }
.v41-thesis .lead { font-size:17px; margin-bottom:4px; }
#realcore { background:radial-gradient(ellipse at 50% 90%,rgba(32,100,188,.12),transparent 70%),#05090f; }
.v41-core-head { display:grid; grid-template-columns:1.5fr 1fr; gap:60px; align-items:start; }
.v41-core-name { font-family:Bahnschrift,Arial,sans-serif; font-size:18px; color:#93bbeb; margin-bottom:22px; }
.v41-core-head h2 { margin-bottom:0; }
.v41-core-copy { padding-top:36px; }
.rc31-pills { gap:8px; margin-top:24px; }
.rc31-pill { background:transparent; border:1px solid #28394f; font-size:12px; text-transform:none; letter-spacing:0; border-radius:4px; padding:8px 11px; }
.v41-embodiments { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:50px; }
.v41-embodiment { margin:0; background:#101822; border-radius:12px; overflow:hidden; border:1px solid #24354d; }
.v41-embodiment img { width:100%; aspect-ratio:4/4.4; object-fit:cover; object-position:center 34%; }
.v41-embodiment figcaption { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 24px; font-size:13px; color:#b6c9df; }
.v41-embodiment figcaption strong { font-family:Bahnschrift,Arial,sans-serif; color:#fff; font-size:17px; font-weight:500; }
.v41-core-note { font-size:12px; color:#8399b3; line-height:1.7; max-width:840px; margin:24px 0 0; }
#data { background:#091421; }
#data h2 { max-width:880px; }
.v41-data-head { display:grid; grid-template-columns:1.4fr 1fr; gap:50px; align-items:center; }
.v41-data-head .lead { font-size:17px; }
.data-proof { margin-top:40px; }
.data-proof-head { grid-template-columns:1fr 1fr; gap:40px; padding-bottom:25px; }
.data-proof-head h3 { font-family:inherit; font-size:26px!important; letter-spacing:-.03em; }
.data-proof-head .kicker { display:none; }
.data-proof-head p { font-size:14px; line-height:1.6; color:#9fb3ca; }
.video-grid { gap:24px; }
.video-card { border-radius:10px; background:#0c1928; border:1px solid #26394e; box-shadow:none; }
.video-card video { background:#01060b; aspect-ratio:16/10; height:auto; max-height:none; object-fit:contain; }
.video-copy { padding:22px; }
.video-copy b { font-size:17px; }
.video-copy p { font-size:14px; line-height:1.7; color:#9fb3ca; margin-bottom:0; }
.data-note { border:0; border-top:1px solid #2a3c51; background:transparent; padding:20px 0 0; font-size:12px; line-height:1.7; }
.v41-path { background:#05090f; }
.v41-path h2 { font-size:clamp(30px,4.1vw,55px); line-height:1.18; }
.v41-path .lead { max-width:770px; }
.v41-path-steps { display:grid; grid-template-columns:repeat(4,1fr); margin-top:44px; gap:0; }
.v41-path-step { border-top:2px solid #287cff; padding:26px 24px 0 0; position:relative; }
.v41-path-step::before { content:''; position:absolute; top:-5px; left:0; width:8px; height:8px; background:#287cff; border-radius:50%; }
.v41-path-step b { display:block; color:#f4f8ff; font-size:24px; font-weight:500; margin-bottom:14px; }
.v41-path-step p { color:#9eb2c7; font-size:15px; line-height:1.65; max-width:220px; }
.v41-focus { background:#0c1827; }
.v41-focus-grid { display:grid; grid-template-columns:1fr 1.15fr; gap:70px; align-items:center; }
.v41-focus-grid h2 { font-size:clamp(38px,4.4vw,64px); }
.v41-focus-grid .lead { font-size:17px; }
.v41-focus-tags { display:flex; flex-wrap:wrap; gap:9px; margin-top:27px; }
.v41-focus-tags span { border:1px solid #314865; padding:10px 12px; color:#c8d9ed; font-size:12px; border-radius:4px; }
.v41-focus-media { margin:0; border:1px solid #293e58; overflow:hidden; border-radius:10px; }
.v41-focus-media video { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; background:#01060b; }
.v41-focus-media figcaption { padding:16px 20px; color:#90a8c4; font-size:12px; line-height:1.6; }
#robotics { background:#05090f; }
.robot-visual { border-radius:12px; }
.robotics-grid { gap:30px; margin-top:38px; }
.robot-cap { border-radius:8px; background:#0b1522; padding:26px; }
.robot-cap span { display:none; }
.robot-cap b { font-size:21px; }
.robot-cap p { font-size:14px; line-height:1.7; }
.robot-visual .media-label { left:28px; right:28px; bottom:26px; }
.media-label .small { display:block; max-width:420px; margin-top:10px; line-height:1.7; }
.nvidia-strip { padding:30px 0; background:#091210; border-top:1px solid #31451c; border-bottom:1px solid #31451c; }
.nv { grid-template-columns:280px 1fr auto; gap:36px; }
.nv-box img { width:186px; }
.nv-copy { font-size:14px; color:#bbceac; }
.tag { letter-spacing:0; text-transform:none; font-size:11px; border-radius:4px; }
#ecosystem { background:#07101b; }
#ecosystem .logo-grid { gap:14px; margin-top:38px; }
.logo-tile { border-radius:8px; }
.people { margin-top:38px; gap:24px; }
.panel { border-radius:10px; padding:30px; background:#0d1928; box-shadow:none; }
.panel .small { font-size:15px; line-height:1.7; }
.panel h3 { font-size:33px; }
#programmes { background:#05090f; }
.program-card { border-radius:10px; background:#0b1522; }
.program-grid { gap:24px; }
.program-copy { padding:24px; }
.program-copy p { font-size:14px; line-height:1.7; }
#company { background:#07101b; }
.vm-card { border-radius:10px; }
.vm-card h3 { margin-top:28px; font-size:34px; }
.values { gap:14px; }
.value { min-height:280px; padding:100px 20px 24px; border-radius:9px; background:#0c1827!important; }
.value b { opacity:.065; }
.value p { font-size:13px; line-height:1.6; }
#contact { background:radial-gradient(ellipse at 0% 0%,rgba(32,97,179,.15),transparent 60%),#05090f; }
#contact h2 { max-width:970px; }
.contact-grid { grid-template-columns:repeat(3,1fr); gap:16px; }
.contact-card { border-radius:9px; background:#0b1522; box-shadow:none; }
.contact-card span { letter-spacing:0; text-transform:none; font-size:12px; }
.contact-card b { font-size:20px; }
.contact-card p { font-size:13px; }
.contact-wrap { gap:24px; margin-top:28px; }
.field input,.field textarea,.field select { border-radius:6px; }
.field label { font-size:13px; }
.loc-card { border-radius:7px; }
.loc-card b { letter-spacing:0; text-transform:none; }
.loc-card p { font-size:12px; }
.footer { background:#03070c; }
.footer p,.footer a { font-size:13px; }
.floating { right:22px; bottom:22px; }
.fab { height:46px; font-size:11px; box-shadow:0 8px 24px rgba(0,0,0,.28); }
.fab.chatbot { border-color:#294363; }
.fab.wa { background:#16804a; }
.chat { bottom:138px; }
.v41-preview-notice { color:#a5bad1; font-size:13px; line-height:1.7; padding-top:8px; }
@media(min-width:1600px) { .v41-hero { min-height:870px; display:flex; align-items:center; } }
@media(max-width:1100px) {
 .container { width:calc(100% - 48px); }
 .nav-links { gap:15px; font-size:11px; }
 .v41-hero-grid { gap:32px; }
 .v41-hero h1 { font-size:62px; }
 .v41-film { min-height:460px; }
 .v41-thesis-grid,.v41-core-head { gap:38px; }
 .v41-focus-grid { gap:36px; }
 .nv { grid-template-columns:220px 1fr; }
 .nv .tags { display:none; }
 .values { grid-template-columns:repeat(3,1fr); }
}
@media(max-width:860px) {
 .nav-inner { height:75px; gap:14px; }
 .nav-links { display:none; }
 .nav-right { margin-left:auto; }
 .menu { display:block; order:3; }
 .lang { display:flex!important; }
 .v41-hero { padding:125px 0 42px; min-height:auto; }
 .v41-hero-grid { grid-template-columns:1fr; gap:40px; }
 .v41-hero h1 { max-width:750px; font-size:clamp(52px,8vw,78px); }
 .v41-hero .hero-copy { max-width:680px; }
 .v41-film { min-height:400px; }
 .v41-film-photo { object-position:center 38%; }
 .v41-film-copy { padding:30px; }
 .v41-wordmark { font-size:55px; }
 .v41-hero-footer { margin-top:36px; padding-top:26px; }
 .v41-thesis-grid,.v41-core-head,.v41-data-head,.v41-focus-grid { grid-template-columns:1fr; gap:30px; }
 .v41-thesis h2 { max-width:700px; }
 .v41-core-copy { padding:0; }
 .v41-core-copy .lead { max-width:660px; }
 .v41-focus-media video { aspect-ratio:16/9; object-fit:contain; }
 .contact-grid { grid-template-columns:1fr 1fr; }
 .v41-path-steps { grid-template-columns:1fr 1fr; row-gap:35px; }
 .v41-path-step { padding-right:24px; }
 .section { padding:75px 0; }
 .chat { bottom:138px; max-height:calc(100vh - 170px); }
}
@media(max-width:600px) {
 .container { width:calc(100% - 36px); }
 .nav-inner { gap:10px; }
 .logo { width:112px; }
 .lang { padding:4px 6px; }
 .lang select { min-width:75px; max-width:95px; font-size:11px; }
 .menu { padding:9px; font-size:11px; }
 .v41-hero { padding:112px 0 32px; }
 .v41-hero h1 { font-size:clamp(42px,10.8vw,61px); letter-spacing:-.055em; }
 .v41-hero-label { font-size:12px; }
 .v41-hero .hero-copy { font-size:16px; }
 .v41-film { min-height:360px; }
 .v41-film-top { left:20px; right:20px; top:20px; font-size:11px; }
 .v41-film-status { padding:6px 8px; font-size:10px; }
 .v41-film-copy { padding:24px 22px; }
 .v41-wordmark { font-size:49px; }
 .v41-film-copy h2 { font-size:17px; max-width:290px; }
 .v41-hero-footer { align-items:start; }
 .v41-hero-footer .v41-flow { gap:10px; font-size:10px; }
 .v41-hero-footer .v41-flow svg { width:12px; }
 .v41-scroll { display:none; }
 .section { padding:58px 0; }
 h2 { font-size:36px; }
 .v41-thesis h2 { font-size:43px; }
 .lead,.v41-thesis .lead,.v41-data-head .lead,.v41-focus-grid .lead { font-size:16px; }
 .v41-embodiments { gap:14px; margin-top:32px; }
 .v41-embodiment img { aspect-ratio:4/5.5; object-position:center 30%; }
 .v41-embodiment figcaption { display:block; padding:14px 12px; font-size:10px; }
 .v41-embodiment figcaption strong { display:block; margin-bottom:7px; font-size:16px; }
 .data-proof-head { grid-template-columns:1fr; gap:14px; }
 .video-grid { grid-template-columns:1fr; }
 .v41-path h2 { font-size:33px; }
 .v41-path-step b { font-size:21px; }
 .v41-path-step p { font-size:14px; }
 .v41-focus-grid h2 { font-size:36px; }
 .robot-visual { min-height:360px; }
 .media-label strong { font-size:22px; }
 .media-label .small { font-size:12px; }
 .nv { grid-template-columns:1fr; gap:14px; }
 .nv-box img { width:160px; }
 .logo-grid { grid-template-columns:repeat(2,1fr); }
 .people,.contact-wrap,.vm,.footer-grid { grid-template-columns:1fr; }
 .panel { padding:24px; }
 .program-grid { grid-template-columns:1fr; }
 .values { grid-template-columns:1fr 1fr; }
 .value { min-height:235px; padding:65px 16px 20px; }
 .value strong { font-size:16px; }
 .value:last-child { grid-column:1/-1; min-height:180px; }
 .contact-grid { grid-template-columns:1fr; }
 .contact-card b { margin-top:12px; }
 .field-grid,.loc-cards { grid-template-columns:1fr; }
 .floating { right:12px; bottom:12px; gap:8px; }
 .fab { height:42px; padding:0 12px; }
 .fab.chatbot img { width:26px; height:26px; }
 .footer { padding-bottom:130px; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 *,*::before,*::after { transition:none!important; animation:none!important; }
}

/* V42: the locked film keeps its complete 16:9 frame and native media controls. */
.v42-film { min-height:0; display:block; background:#0b1522; }
.v42-film::before { display:none; }
.v42-film-heading { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:19px 22px; font-size:12px; color:#c9dcf2; }
.v42-film-heading span:last-child { color:#8ea8c5; font-size:11px; text-align:right; }
.v42-film-player { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:contain; background:#02060c; }
.v42-film-caption { padding:22px; }
.v42-film-caption h2 { font-family:inherit; font-size:20px; font-weight:500; line-height:1.35; letter-spacing:-.02em; margin:0 0 10px; }
.v42-film-caption p { color:#98adc4; font-size:12px; line-height:1.65; margin:0; }
.v42-film-actions { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:20px; }
.v42-film-actions button { cursor:pointer; color:#e4f0ff; border-radius:5px; }
.v42-film-play { display:inline-flex; align-items:center; justify-content:center; gap:9px; background:#287cff; border:1px solid #287cff; padding:11px 14px; font-size:12px; }
.v42-film-play:hover { background:#4b91ff; }
.v42-film-play svg { width:16px; height:16px; fill:currentColor; flex:none; }
.v42-film-sound { background:transparent; border:1px solid #30455e; padding:11px 12px; font-size:11px; flex:none; }
.v42-film-sound[aria-pressed="false"] { color:#8fa5bf; }
.v42-film-feedback:empty { display:none; }
.v42-film-caption .v42-film-feedback { margin-top:12px; color:#ffb4a5; }
.v42-music-credit { margin-top:18px; font-size:10px; color:#8ca3bd; }
.v42-music-credit summary { cursor:pointer; width:fit-content; padding:3px 0; }
.v42-music-credit summary:focus-visible { outline:3px solid #a5d3ff; outline-offset:4px; }
.v42-music-credit p { padding-top:8px; font-size:10px; }
.v42-music-credit a { color:#c8dfff; text-decoration:underline; text-underline-offset:3px; }
@media(max-width:600px) {
 .v42-film-heading { padding:15px 16px; font-size:11px; }
 .v42-film-heading span:last-child { font-size:10px; }
 .v42-film-caption { padding:18px 16px; }
 .v42-film-caption h2 { font-size:18px; }
 .v42-film-play { font-size:11px; padding:11px 12px; }
 .v42-film-actions { gap:9px; }
}
