*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--light);color:var(--dark);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}img{max-width:100%;display:block}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid currentColor;outline-offset:6px}::selection{background:var(--green);color:white}.shell{width:calc(100% - 112px);max-width:1400px;margin-inline:auto}.header{position:fixed;inset:0 0 auto;z-index:50;color:var(--light);transition:background .25s,color .25s}.header-inner{height:106px;display:flex;justify-content:space-between;align-items:center}.brand{display:inline-block;background:var(--white);flex-shrink:0}.brand img{width:68px;height:68px;object-fit:contain;animation:logo-reveal .5s ease both}.header nav{display:flex;gap:36px;align-items:center}.header nav a{border-bottom:1px solid transparent}.header nav a:hover,.header nav a[aria-current]{border-color:currentColor}.header.scrolled,.header.light-header,.header:has(nav.is-open){background:var(--light);color:var(--green);box-shadow:0 1px 0 #0002}.menu-button{display:none}.skip{position:fixed;left:20px;top:10px;transform:translateY(-200%);z-index:90;padding:10px;background:var(--green);color:white}.skip:focus{transform:none}.cinema-hero{min-height:780px;height:100svh;position:relative;isolation:isolate;color:var(--light);background:var(--dark);display:flex;align-items:center;overflow:hidden}.cinema-hero>picture{position:absolute;inset:0;z-index:-1}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center}.hero-content{padding-top:90px;padding-bottom:80px}.hero-content h1{max-width:930px}.hero-content>p{max-width:600px;font-size:var(--p2);margin-top:34px}.hero-actions{display:flex;gap:35px;align-items:center;margin-top:44px}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding:8px 0;transition:opacity .2s}.text-link:hover{opacity:.65}.hero-actions .text-link{padding:10px 0}.home-hero .hero-content{align-self:flex-start;padding-top:190px}.home-hero h1{max-width:650px}.home-hero .hero-content>p{max-width:500px}.home-hero .hero-actions{margin-top:55px}.technology-hero .hero-content h1{max-width:820px}.services-hero h1{max-width:820px}.research-hero h1{max-width:820px}.about-hero .hero-content{align-self:flex-end;padding-bottom:125px}.about-hero h1{max-width:950px}.section{padding:130px 0}.editorial-split{display:grid;grid-template-columns:1.1fr 1fr;gap:100px}.editorial-split>div p+p{margin-top:26px}.editorial-split h2{max-width:720px}.editorial-split>p,.editorial-split>div>p{max-width:650px}.editorial-split .text-link{margin-top:35px}.problem-editorial{display:grid;grid-template-columns:1.05fr 1fr;gap:100px}.problem-body p+p{margin-top:25px}.problem-body .editorial-photo{margin-top:55px}.editorial-photo{overflow:hidden;background:var(--gray);width:100%}.sector-photo{width:100%;aspect-ratio:16/9;background-image:url('/assets/cinematic-sectors.png');background-size:200% 200%;background-repeat:no-repeat}.sector-automotive{background-position:left top}.sector-robotics{background-position:right top}.sector-xr{background-position:left bottom}.sector-healthcare{background-position:right bottom}.technology-section{background:var(--dark);color:var(--light)}.interaction-figure{margin-top:90px}.interaction-diagram{display:flex;align-items:center;justify-content:space-between;gap:20px;border-block:1px solid #ffffff55;padding:45px 0;font-size:var(--p2)}.interaction-diagram>div{max-width:200px}.diagram-arrow{font-size:var(--p1);opacity:.6}.interaction-figure figcaption{font-size:var(--p2);margin-top:25px;max-width:900px;color:var(--gray)}.technology-statement{margin-top:60px}.applications h2{max-width:1100px}.applications-intro{margin-top:35px;max-width:800px}.application-editorial{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:90px 60px;margin-top:85px}.application-editorial article:nth-child(1){grid-column:1/8}.application-editorial article:nth-child(2){grid-column:9/13;margin-top:170px}.application-editorial article:nth-child(3){grid-column:1/6}.application-editorial article:nth-child(4){grid-column:7/13;margin-top:150px}.application-editorial article{min-width:0}.application-editorial article:nth-child(2) .sector-photo{aspect-ratio:16/9}.application-editorial h3{font-size:var(--h4);line-height:var(--h4-leading);margin-top:30px}.application-editorial p{font-size:var(--p2);margin-top:25px;max-width:680px}.image-note{font-size:var(--p2);margin-top:70px;max-width:1000px;color:#666}.science-section,.service-editorial{background:#fff}.contact-section{background:var(--green);color:var(--white);padding:105px 0}.contact-section h2{max-width:1300px}.contact-bottom{display:flex;justify-content:space-between;gap:80px;align-items:end;margin-top:45px}.contact-bottom p{max-width:800px}.contact-bottom>.text-link{white-space:nowrap;flex-shrink:0}.contact-details{margin-top:65px;border-top:1px solid #ffffff66;border-bottom:1px solid #ffffff66}.contact-details>summary{padding:26px 0}.contact-details form{padding:25px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px 50px}.full{grid-column:1/-1}label{font-size:var(--p2)}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #ffffff77;background:transparent;color:white;padding:12px 0;border-radius:0}select option{color:var(--dark);background:white}textarea{resize:vertical}.form-end{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-top:30px}.form-end p{font-size:var(--p2);max-width:800px}.form-end a{text-decoration:underline}.button{border:1px solid currentColor;background:transparent;color:inherit;padding:15px 25px;flex-shrink:0}.button:hover{background:var(--light);color:var(--green)}#form-status{font-size:var(--p2);margin-top:20px}.footer{background:var(--dark);color:var(--gray);padding:85px 0 30px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.footer-identity h4{margin-top:30px;font-size:var(--h4)}.footer-identity h4 span{color:#aaa}.footer-group h2{font-size:var(--p1);font-weight:700;letter-spacing:0;line-height:1.4;margin-bottom:30px}.footer-group a{display:block;font-size:var(--p1);line-height:1.7}.footer-group a:hover{color:var(--white)}.copyright{font-size:var(--p2);margin-top:80px;color:#aaa}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.service-grid .sector-photo{aspect-ratio:16/9}.service-grid h2{margin-bottom:35px}.service-grid p+p{margin-top:25px}.service-grid .text-link{margin-top:35px}summary{display:flex;justify-content:space-between;align-items:center;gap:25px;list-style:none}summary::-webkit-details-marker{display:none}summary span{flex-shrink:0}details[open]>summary span{transform:rotate(45deg)}.editorial-split details{margin-top:40px;border-top:1px solid #bbb;padding-top:25px;font-size:var(--p2)}.editorial-split details p{font-size:var(--p2);margin-top:25px}.research-list article{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;padding:70px 0;border-top:1px solid #bbb}.research-list article:first-child{padding-top:0;border:0}.research-list p+p{margin-top:25px}.research-list .text-link{margin-top:35px}.publication{font-size:var(--p2);margin-top:35px!important;color:var(--green)}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.portrait{width:100%;height:590px;object-fit:cover;object-position:center 30%}.team-grid h2{font-size:var(--h4);line-height:var(--h4-leading);margin-top:35px}.team-grid p{font-size:var(--p2);margin-top:25px}.team-grid h2+p{font-size:var(--p1);margin-top:12px;color:var(--green)}.team-grid .text-link{margin-top:30px;text-transform:none;overflow-wrap:anywhere}.company-background{display:grid;grid-template-columns:1fr 1fr;gap:100px}.company-background p+p{margin-top:30px}.company-background .text-link{margin-top:35px}.legal-intro{padding-top:190px;padding-bottom:40px}.legal-section{padding-top:50px}.legal-layout{display:grid;grid-template-columns:1fr 3fr;gap:80px}.legal-layout aside{font-size:var(--p2)}.legal-layout aside a{display:block;margin-bottom:20px}.legal-copy{font-size:var(--p2);overflow-wrap:anywhere}.legal-copy p{font-size:var(--p2);margin-bottom:16px}.legal-copy h2{font-size:var(--h4);line-height:var(--h4-leading);margin:45px 0 25px}.legal-copy h2:first-child{margin-top:0}.legal-copy a,.implementation-note a{text-decoration:underline}.implementation-note{margin-top:70px;padding-top:45px;border-top:1px solid #bbb;overflow-wrap:anywhere}.implementation-note h2{font-size:var(--h4);line-height:var(--h4-leading);margin-bottom:30px}.implementation-note p{font-size:var(--p2)}.implementation-note p+p{margin-top:25px}.is-revealing{animation:section-reveal .6s ease both}@keyframes logo-reveal{from{opacity:0}to{opacity:1}}@keyframes section-reveal{from{opacity:.8;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.shell{width:calc(100% - 70px)}.editorial-split,.problem-editorial,.research-list article,.service-grid,.company-background{gap:55px}.footer-top{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:25px}.application-editorial{gap:70px 35px}.application-editorial article:nth-child(2){grid-column:8/13}.hero-content h1{max-width:800px}.contact-bottom{gap:40px}.team-grid{gap:45px}.portrait{height:480px}.footer-identity h4{font-size:var(--h4)}}
@media(max-width:767px){html{scroll-padding-top:90px}.shell{width:calc(100% - 40px)}.header-inner{height:88px}.brand img{width:55px;height:55px}.menu-button{display:flex;flex-direction:column;gap:7px;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid currentColor;background:none;color:inherit}.menu-button span{width:18px;height:1px;background:currentColor;transition:transform .2s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.header nav{display:none;position:absolute;top:88px;left:0;right:0;background:var(--light);color:var(--green);padding:25px 20px 35px;flex-direction:column;align-items:flex-start;gap:25px;border-bottom:1px solid #ccc}.header nav.is-open{display:flex}.cinema-hero{min-height:760px;height:100svh;align-items:flex-start}.hero-content{padding-top:160px;padding-bottom:75px}.hero-content h1{max-width:100%;font-size:var(--h3);line-height:var(--h3-leading)}.hero-content>p{max-width:450px;margin-top:25px}.home-hero .hero-content{padding-top:145px}.home-hero h1{font-size:var(--h4);line-height:var(--h4-leading);max-width:100%}.home-hero .hero-content>p{max-width:330px}.home-hero .hero-actions{margin-top:35px;gap:25px;flex-wrap:wrap}.hero-photo{object-position:65% center}.home-hero .hero-photo{object-position:center}.about-hero .hero-content{align-self:flex-start;padding-top:165px;padding-bottom:75px}.section{padding:75px 0}.editorial-split,.problem-editorial,.service-grid,.research-list article,.company-background,.team-grid{grid-template-columns:1fr;gap:40px}.editorial-split>div p+p{margin-top:25px}.problem-body .editorial-photo{margin-top:35px}.interaction-figure{margin-top:50px}.interaction-diagram{flex-direction:column;align-items:flex-start;padding:30px 0;gap:22px}.interaction-diagram>div{max-width:none}.diagram-arrow{transform:rotate(90deg);margin-left:20px}.interaction-figure figcaption{margin-top:25px}.technology-statement{margin-top:40px}.applications-intro{margin-top:25px}.application-editorial{grid-template-columns:1fr;gap:55px;margin-top:50px}.application-editorial article:nth-child(n){grid-column:auto;margin-top:0}.application-editorial article:nth-child(2) .sector-photo{aspect-ratio:16/9}.application-editorial h3{margin-top:25px}.application-editorial p{margin-top:20px}.image-note{margin-top:45px}.contact-section{padding:65px 0}.contact-section h2{font-size:var(--h3);line-height:var(--h3-leading)}.contact-bottom{display:block;margin-top:30px}.contact-bottom .text-link{margin-top:30px}.contact-details{margin-top:40px}.form-grid{grid-template-columns:1fr;gap:25px}.form-end{display:block}.form-end .button{margin-top:25px}.footer{padding:60px 0 25px}.footer-top{grid-template-columns:repeat(3,1fr);gap:40px 20px}.footer-identity{grid-column:1/-1;display:flex;flex-direction:column;align-items:flex-start;gap:25px}.footer-identity h4{font-size:var(--h4);margin:0}.footer-group h2{font-size:var(--p2);margin-bottom:20px}.footer-group a{font-size:var(--p2)}.copyright{margin-top:50px}.service-grid .sector-photo{aspect-ratio:16/9}.research-list article{padding:45px 0}.publication{margin-top:25px!important}.portrait{height:470px}.team-grid{gap:70px}.team-grid h2{margin-top:25px}.team-grid p{margin-top:20px}.legal-intro{padding-top:150px}.legal-intro h1{font-size:var(--h2);line-height:var(--h2-leading)}.legal-layout{grid-template-columns:1fr;gap:35px}.legal-layout aside{display:flex;gap:25px;flex-wrap:wrap}.legal-copy h2{margin-top:35px}.implementation-note{margin-top:45px}.legal-section{padding-top:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.header,.footer,.contact-section{display:none}.cinema-hero{height:auto;min-height:0;padding:30px 0;background:white;color:black}.hero-photo{display:none}.hero-content{padding:20px 0!important}.section{padding:30px 0}.shell{width:95%}}
/* Readability at the bright window in the clinical-simulation image. */
body[data-page="research"] .header{background:var(--light);color:var(--green)}
@media(max-width:767px){.home-hero .hero-photo{object-position:center top}}
.photography-note{font-size:var(--p2);color:#aaa;margin-top:65px;max-width:950px}.photography-note+.copyright{margin-top:25px}
.original-research-photo{margin-top:35px}.original-research-photo img{width:100%;height:auto}.original-research-photo figcaption{font-size:var(--p2);margin-top:15px;color:#666}
