/* A matte light field underneath the content, with a CSS-only fallback. */
body{background:#07090d}
.ambient{z-index:0;overflow:hidden;isolation:isolate;background:#07090d;contain:strict}
#main{position:relative;z-index:1}
.ambient-glow{position:absolute;display:block;pointer-events:none;filter:blur(48px);will-change:transform;transform-origin:50% 50%}
.ambient-glow-blue{left:24vw;top:4vh;width:112vw;height:112vh;background:radial-gradient(ellipse at 52% 55%,#91a6cc6b 0%,#6c85b039 25%,#354d7e15 48%,transparent 70%);animation:ambient-blue-drift 34s ease-in-out infinite alternate;transform:translate3d(-7%,-6%,0) rotate(-12deg) scale(.98)}
.ambient-glow-warm{left:-48vw;top:-34vh;width:118vw;height:118vh;background:radial-gradient(ellipse at 48% 48%,#963f293b 0%,#8d40241a 33%,transparent 67%);animation:ambient-warm-drift 43s ease-in-out infinite alternate;transform:translate3d(-3%,6%,0) rotate(-16deg) scale(1.06)}
.ambient-glow-silver{left:-35vw;top:43vh;width:116vw;height:95vh;background:radial-gradient(ellipse at 55% 50%,#7c95b63d 0%,#5268891d 34%,transparent 68%);animation:ambient-silver-drift 39s ease-in-out infinite alternate;transform:translate3d(6%,4%,0) rotate(10deg) scale(1)}
.ambient:after{content:"";position:absolute;inset:0;opacity:.42;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='linear' slope='2.5' intercept='-.75'/%3E%3CfeFuncG type='linear' slope='2.5' intercept='-.75'/%3E%3CfeFuncB type='linear' slope='2.5' intercept='-.75'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");pointer-events:none}
.ambient-canvas{position:absolute;inset:0;display:none;width:100%;height:100%;opacity:.42;pointer-events:none}
.ambient.has-grain-canvas .ambient-canvas{display:block}
.ambient.has-grain-canvas .ambient-glow,.ambient.has-grain-canvas:after{display:none}
@keyframes ambient-blue-drift{to{transform:translate3d(-22%,13%,0) rotate(9deg) scale(1.13)}}
@keyframes ambient-warm-drift{to{transform:translate3d(22%,27%,0) rotate(8deg) scale(.93)}}
@keyframes ambient-silver-drift{to{transform:translate3d(27%,-22%,0) rotate(-14deg) scale(1.14)}}
.hero{background:#080b106e}
.hero-atmosphere{background:radial-gradient(ellipse at 15% 40%,#1d425918,transparent 47%),radial-gradient(ellipse at 100% 0,#283c5615,transparent 46%)}
.section{border-top-color:#d0e1f20b}
.structure-section{background:radial-gradient(ellipse at 10% 30%,#182b3b13,transparent 65%)}
.contact-section{background:radial-gradient(ellipse at 10% 80%,#23354d18,transparent 70%)}

/* Strong chapter titles, then a readable hierarchy inside the projects. */
.hero h1{font-size:clamp(62px,6.05vw,104px);font-weight:900;letter-spacing:-.055em;line-height:1.13}
.hero h1>span:first-child{-webkit-text-stroke:.35px currentColor}
.section-heading{margin-bottom:62px}
.section-heading .english-title{font-size:clamp(64px,8.8vw,142px);font-weight:850;letter-spacing:-.065em;line-height:1.05;color:#bdcce535;margin-top:17px}
.section-heading h2{font-size:clamp(40px,5.05vw,78px);font-weight:900;line-height:1.21;letter-spacing:-.045em;-webkit-text-stroke:.35px currentColor;text-wrap:balance;margin-top:1px}
.section-heading>p:last-child{font-size:17px;line-height:1.9;color:#a6b6c8;max-width:960px;margin-top:23px;font-weight:500}
.section-heading .eyebrow{font-size:12px;color:#a2c8e6;letter-spacing:.17em;font-weight:750}
.project-description{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:70px;margin-top:43px}
.project-description h3{font-size:clamp(42px,4.1vw,66px);font-weight:900;line-height:1.17;letter-spacing:-.05em;-webkit-text-stroke:.25px currentColor;margin-top:17px}
.project-description h3>span{font-size:102px;font-weight:550;color:#bfd9f01d;right:4px;top:0;letter-spacing:-.06em;-webkit-text-stroke:0;pointer-events:none}
.project-description .eyebrow{font-size:11px;line-height:1.8;color:#93b5d0;letter-spacing:.1em;font-weight:650}
.project-role{font-size:16px;font-weight:650;line-height:1.85;color:#b3c5d8;margin-top:22px}
.project-story>p{font-size:18px;font-weight:500;line-height:1.95;color:#c1cddb}
.project-points{padding-top:15px}
.project-points li{font-size:16px;line-height:1.95;color:#9fb1c5;margin-top:12px;padding-left:18px}
.project-points li:before{width:4px;height:4px;top:13px;background:#9abfdf}
.project-story .text-link{font-size:16px;font-weight:700;margin-top:19px;line-height:1.8;padding:10px 0}
.project-metrics{margin-top:43px;padding-top:32px;gap:25px}
.project-metrics dd{font-size:60px;font-weight:650;line-height:1.2;letter-spacing:-.05em}
.project-metrics dd span{font-size:23px;font-weight:500;color:#9cb6ce}
.project-metrics dt{font-size:14px;line-height:1.85;color:#a2b5ca;margin-top:12px}
.project-topline,.project-topline>span:last-child{font-size:12px;color:#98afc6}
.project-media-note{font-size:14px;color:#a6bed3;line-height:1.9}
.film-tag{font-size:10px;font-weight:650;letter-spacing:.07em;color:#d4e4f3;padding:7px 11px}
.lidar-demo-story h4{font-size:clamp(30px,3vw,44px);font-weight:800;line-height:1.35;letter-spacing:-.035em}
.lidar-demo-story>p:not(.eyebrow){font-size:17px;color:#acbed1}
.lidar-demo-story li strong{font-size:18px;font-weight:700}
.lidar-demo-story li p{font-size:14px;color:#9eb2c6;line-height:1.8}
.structure-copy h3{font-size:clamp(31px,3vw,44px);line-height:1.35;font-weight:800;letter-spacing:-.035em}
.structure-copy>p:not(.micro){font-size:16px;color:#abbdd0;line-height:1.95}
.structure-copy li{font-size:15px;line-height:1.8}
.contact-heading h2{font-size:clamp(44px,5.3vw,80px);font-weight:900;line-height:1.2;-webkit-text-stroke:.25px currentColor}
@media(max-width:1200px){.hero h1{font-size:clamp(48px,6.1vw,74px)}.project-description{gap:42px}.project-story>p{font-size:17px}.project-points li{font-size:15px}.project-role{font-size:14px}.project-metrics dd{font-size:52px}.project-metrics dt{font-size:13px}.project-story .text-link{font-size:15px}.section-heading>p:last-child{font-size:16px}}
@media(max-width:900px){.hero h1{font-size:clamp(46px,6.2vw,62px)}.section-heading{margin-bottom:45px}.section-heading h2{font-size:clamp(37px,5.2vw,48px)}.section-heading .english-title{font-size:clamp(58px,8.6vw,80px)}.project-description{gap:32px}.project-description h3{font-size:39px}.project-description h3>span{font-size:80px}.project-story>p{font-size:16px}.project-points li{font-size:14px}.project-role{font-size:13px}.project-metrics dd{font-size:47px}.project-metrics dd span{font-size:20px}.project-metrics dt{font-size:12px}.structure-copy>p:not(.micro){font-size:15px}.structure-copy li{font-size:14px}}
@media(max-width:760px){
  .ambient-glow{filter:blur(32px)}.ambient-glow-blue{left:0;top:12vh;width:155vw;height:110vh;background:radial-gradient(ellipse at 58% 53%,#8d9fc958 0%,#566f9f2b 32%,transparent 68%)}.ambient-glow-warm{left:-95vw;top:-18vh;width:175vw;height:100vh}.ambient-glow-silver{display:none}
  .hero h1{font-size:clamp(44px,12vw,64px);font-weight:900;line-height:1.13;letter-spacing:-.055em}.hero h1>span:first-child{-webkit-text-stroke:.2px currentColor}
  .section-heading{margin-bottom:36px}.section-heading .eyebrow{font-size:10px;letter-spacing:.14em}.section-heading .english-title{font-size:clamp(34px,8.6vw,66px);white-space:normal;line-height:1.08;letter-spacing:-.06em;max-width:100%;margin-top:13px;overflow-wrap:normal;text-wrap:balance;color:#c0cce52d}.section-heading h2{font-size:clamp(33px,8.9vw,51px);font-weight:900;line-height:1.23;letter-spacing:-.045em;-webkit-text-stroke:.2px currentColor;margin-top:7px}.section-heading>p:last-child{font-size:14px;line-height:1.9;margin-top:17px}
  .project-description{grid-template-columns:1fr;gap:27px;margin-top:28px}.project-description h3{font-size:clamp(38px,10.2vw,54px);line-height:1.2;font-weight:900;-webkit-text-stroke:.2px currentColor;margin-top:12px}.project-description h3>span{font-size:85px;right:2px;top:1px;color:#bfd9f01b}.project-description .eyebrow{font-size:9px;line-height:1.8}.project-role{font-size:13px;line-height:1.8;margin-top:15px}.project-story>p{font-size:15px;line-height:1.95}.project-points{padding-top:10px}.project-points li{font-size:14px;line-height:1.95;margin-top:11px;padding-left:15px}.project-points li:before{width:3px;height:3px;top:12px}.project-story .text-link{font-size:14px;margin-top:15px;gap:38px;padding:10px 0}
  .project-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:30px;padding-top:27px;gap:27px 19px}.project-metrics>div{padding-left:18px}.project-metrics dd{font-size:46px;font-weight:650;line-height:1.2}.project-metrics dd span{font-size:19px}.project-metrics dt{font-size:12px;line-height:1.8;margin-top:9px}.project-topline,.project-topline>span:last-child{font-size:9px;line-height:1.8}.project-media-note{font-size:12px;line-height:1.9}.film-tag{font-size:8px;padding:6px 8px;letter-spacing:.04em}
  .lidar-demo-story h4{font-size:31px;line-height:1.4}.lidar-demo-story>p:not(.eyebrow){font-size:15px;line-height:1.9}.lidar-demo-story li strong{font-size:17px}.lidar-demo-story li p{font-size:13px;line-height:1.8}.structure-copy h3{font-size:32px;line-height:1.4}.structure-copy>p:not(.micro){font-size:14px;line-height:1.95}.structure-copy li{font-size:13px;line-height:1.85}.contact-heading h2{font-size:44px;font-weight:900;-webkit-text-stroke:.2px currentColor}
}
@media(max-width:365px){.hero h1{font-size:42px}.section-heading .eyebrow{font-size:9px}.section-heading .english-title{font-size:32px}.section-heading h2{font-size:31px}.section-heading>p:last-child{font-size:13px}.project-description h3{font-size:37px}.project-role{font-size:12px}.project-story>p{font-size:14px}.project-points li{font-size:13px}.project-metrics dd{font-size:42px}.project-metrics dd span{font-size:17px}.project-metrics dt{font-size:11px}.project-topline,.project-topline>span:last-child{font-size:8px}.structure-copy h3{font-size:29px}.contact-heading h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){.ambient-glow{animation:none;will-change:auto}}
