@font-face{font-family:Orbitron;src:url('./assets/orbitron.woff2') format('woff2');font-weight:800;font-display:swap}@font-face{font-family:Inter;src:url('./assets/inter.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--cyan:#28c5f3;--red:#ff071d;--purple:#7929ad;--ink:#030304;--muted:#acadb9;--display:Orbitron,Arial,sans-serif;scroll-behavior:smooth;scroll-padding-top:88px;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--ink);color:#fff;font-family:Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#28c5f3;color:#000}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--cyan);outline-offset:6px}.skip{position:fixed;top:-80px;left:20px;background:var(--cyan);color:#000;padding:15px;z-index:100}.skip:focus{top:15px}#world{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}#scene-vignette{position:fixed;inset:0;background:linear-gradient(90deg,#0007,transparent 60%),linear-gradient(0deg,#030304,transparent 24%,transparent 80%,#030304);pointer-events:none;z-index:1}#fallback-art{display:none}body.no-webgl #fallback-art{display:block;position:fixed;inset:0;background:radial-gradient(at 70% 35%,#151358aa,transparent 60%),url('./assets/logo.png') 85% 50%/45vw auto no-repeat}
header{height:92px;position:fixed;top:0;inset-inline:0;z-index:30;display:flex;align-items:center;gap:28px;padding:0 4.5vw;border-bottom:1px solid #ffffff0c;background:#08080bdd;backdrop-filter:blur(18px)}.brand{display:block;width:175px;height:65px;overflow:hidden;flex:none}.brand img{width:100%;height:100%;object-fit:cover;mix-blend-mode:screen}header nav{display:flex;gap:clamp(16px,2vw,34px);margin:auto}header nav a{font-size:13px;color:#d7d7dd;transition:color .25s;white-space:nowrap}header nav a:hover,header nav a.active{color:var(--cyan)}.pill{background:var(--cyan);color:#02060a;display:inline-flex;align-items:center;justify-content:center;gap:30px;border-radius:40px;padding:15px 24px;font-size:14px;white-space:nowrap;transition:background .25s,transform .25s}.pill:hover{background:#7be2ff;transform:translateY(-3px)}.pill span{font-size:21px}.large{padding:20px 30px;font-size:16px}#menu-toggle{display:none;border:0;background:none;padding:10px}#menu-toggle span{display:block;width:24px;height:2px;background:white;margin:6px 0}#mobile-menu{position:fixed;top:80px;left:0;right:0;background:#08080bf5;z-index:29;padding:24px 7vw}#mobile-menu a{display:block;padding:14px 0;font-family:var(--display)}
main,footer{position:relative;z-index:2}.chapter{position:relative;min-height:100svh}.chapter-inner{position:sticky;top:0;min-height:100svh;padding:150px 7vw 90px;display:flex;align-items:center}.hero{height:135svh}.hero .chapter-inner{align-items:center}.hero-copy{position:relative;z-index:2;max-width:960px}.kicker{font-size:12px;color:var(--cyan);text-transform:uppercase;letter-spacing:.23em;font-weight:700;margin:0 0 24px}.hero .kicker{letter-spacing:.35em;margin-bottom:30px}h1,h2,h3{font-family:var(--display);font-weight:800;margin:0;line-height:1.15}h1{font-size:clamp(40px,5.65vw,94px);letter-spacing:-.045em}h2{font-size:clamp(34px,4.3vw,76px);letter-spacing:-.04em}h3{font-size:17px;letter-spacing:-.025em}em{font-style:normal;background:linear-gradient(100deg,#b572ff,#f21556 58%,#ff1b19);background-clip:text;-webkit-background-clip:text;color:transparent}.hero h1 em{background:linear-gradient(95deg,#fff,#9bf0ff 25%,#26c7f7 62%,#9161df);background-clip:text;-webkit-background-clip:text}.line{display:block;overflow:hidden;padding-bottom:.09em;margin-bottom:-.05em}.line>span{display:block;transform-origin:left center}.lead{font-size:20px;line-height:1.6;color:#d6d6df;margin:30px 0}.text-link{font-size:14px;display:inline-flex;align-items:center;gap:28px;padding:14px 0;border-bottom:1px solid #ffffff50}.text-link span{font-size:22px;color:var(--cyan)}.text-link:hover{color:var(--cyan)}.hero-bottom{position:absolute;left:7vw;right:7vw;bottom:34px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.18em;color:#9797a8}.hero-bottom b{display:inline-block;margin-left:20px;color:var(--cyan);font-size:18px;animation:bob 2s infinite}.copy{width:min(500px,46%);position:relative;z-index:2}.copy h2{font-size:clamp(35px,4vw,66px)}.copy>p:not(.kicker){font-size:20px;line-height:1.6;color:#e0e0e7;margin:28px 0 0}.copy>p.body{font-size:16px;line-height:1.8;color:#bdbdc9;max-width:440px}.about{height:115svh}.about .copy:before,.service-chapter .copy:before{content:'';position:absolute;inset:-60px -90px;background:radial-gradient(ellipse,#030304e8,#03030480 60%,transparent 72%);z-index:-1;pointer-events:none}.locations{display:flex;align-items:center;gap:18px;margin:28px 0;font-size:11px;letter-spacing:.15em}.locations i{width:28px;height:1px;background:var(--cyan)}.outline{display:inline-block;border:1px solid #ffffffa0;border-radius:40px;padding:15px 23px;font-family:var(--display);font-size:10px;letter-spacing:.03em}.outline:hover{border-color:var(--cyan);color:var(--cyan)}.content-inner{padding:115px 7vw;max-width:1800px;margin:auto;width:100%}.section-top{margin-bottom:55px}.section-top>p:not(.kicker){color:var(--muted);font-size:16px;line-height:1.7}.services-overview{background:#030304db;min-height:105svh}.services-overview .chapter-inner{display:block;position:relative}.title-dot{color:var(--cyan)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{position:relative;min-height:265px;border:1px solid #ffffff16;background:#0c0c1250;border-radius:3px;padding:30px;transition:background .4s,border-color .4s,transform .4s;overflow:hidden}.service-card:hover{background:linear-gradient(130deg,#ed0925,#7e2da5);border-color:#db3579;transform:translateY(-5px)}.service-number{font-family:var(--display);font-size:38px;color:transparent;-webkit-text-stroke:1px #737380;display:block;margin-bottom:24px}.service-card:hover .service-number{color:white;-webkit-text-stroke:0}.service-symbol{position:absolute;right:32px;top:30px;font-size:34px;color:var(--cyan);line-height:1}.service-card p{font-size:14px;line-height:1.75;color:#b5b5c0;max-width:310px;margin-bottom:8px}.service-card:hover p{color:#fff}.card-arrow{position:absolute;right:24px;bottom:20px;color:var(--cyan);font-size:20px}.service-chapter{height:125svh}.right .chapter-inner{justify-content:flex-end}.tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.tags span{font-size:11px;padding:8px 11px;border:1px solid #ffffff27;border-radius:25px;color:#d0d0db}.scene-status{position:fixed;z-index:12;left:4.5vw;bottom:26px;display:flex;gap:12px;align-items:center;font-size:10px;color:#a4a4b3;letter-spacing:.1em;pointer-events:none;transition:opacity .3s}.status-line{width:30px;height:1px;background:#28c5f380}#scene-number{color:var(--cyan);font-family:var(--display)}.rail{position:fixed;right:0;top:0;width:3px;height:100%;z-index:35;background:#ffffff0a}.rail span{display:block;background:linear-gradient(var(--cyan),var(--purple),var(--red));height:0}
.projects{background:#030304ed}.projects .section-top{text-align:center}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:45px 28px}.project-grid figure{margin:0}.project-grid canvas{display:block;width:100%;aspect-ratio:1;border-radius:50%;transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .5s;border:1px solid #ffffff1c}.project-grid figure:hover canvas{transform:translateY(-8px) scale(1.025);filter:brightness(1.1)}figcaption{display:flex;gap:10px;justify-content:space-between;font-family:var(--display);font-size:10px;line-height:1.6;margin-top:22px;color:#d8d8e5}figcaption span{color:var(--cyan)}.why{background:#030304e0}.why .section-top{text-align:center}.timeline{position:relative;max-width:950px;margin:auto;display:flex;flex-direction:column;gap:32px}.timeline:before{content:'';position:absolute;left:50%;width:1px;top:0;bottom:0;background:linear-gradient(white,var(--cyan),#ffffff20)}.timeline article{position:relative;width:46%;padding:32px;background:linear-gradient(125deg,#722b9d,#d2144b 75%,#ff091b);border:1px solid #ffffff18;border-radius:3px}.timeline article:nth-child(even){margin-left:auto}.timeline article:after{content:'';position:absolute;right:-9.9%;top:30px;width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 20px #28c5f3}.timeline article:nth-child(even):after{right:auto;left:-9.9%}.timeline article>span{display:block;font-family:var(--display);font-size:12px;color:#ffffff80;margin-bottom:18px}.timeline h3{font-size:15px}.timeline p{font-size:14px;line-height:1.7;color:#f2dce9}.products{background:#07070c}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.product-grid article{background:#f5f5f5;color:#111;overflow:hidden}.product-grid canvas{display:block;width:100%;aspect-ratio:1.55;object-fit:cover}.product-grid article>div{padding:32px}.product-grid h3{font-size:clamp(21px,2.6vw,40px);background:linear-gradient(100deg,#76289d,#fb0820);color:transparent;background-clip:text;-webkit-background-clip:text}.product-grid p:not(.kicker){font-size:16px;line-height:1.7;color:#545461}.product-grid .text-link{border-color:#1115}.product-grid .kicker{margin-bottom:15px}.contact{height:115svh}.contact .chapter-inner{justify-content:center;text-align:center}.contact-copy{padding-top:12vh}.contact h2{font-size:clamp(65px,10vw,170px);letter-spacing:-.055em}.contact p:not(.kicker){font-size:18px;color:#c9c9d5;margin:30px 0}.contact .large{margin-top:10px}footer{padding:40px 7vw 65px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff16;background:#030304;gap:30px;font-size:12px;color:#aaaab8}footer .brand{width:145px;height:55px}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(32px);transition:opacity .8s,transform 1s cubic-bezier(.2,.7,.2,1)}.js-motion .reveal.visible{opacity:1;transform:translateY(0)}.js-motion .reveal .line>span{transform:translateY(110%) rotate(2deg);transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}.js-motion .reveal.visible .line>span{transform:translateY(0) rotate(0)}.js-motion .reveal.visible .line:nth-child(2)>span{transition-delay:.12s}.service-card:nth-child(2),.service-card:nth-child(5){transition-delay:.06s}.service-card:nth-child(3),.service-card:nth-child(6){transition-delay:.12s}@keyframes bob{50%{transform:translateY(5px)}}
@media(min-width:1700px){.copy{width:560px;max-width:45%}.copy>p.body{font-size:18px;max-width:500px}}@media(max-width:1100px){header nav{gap:17px}header nav a{font-size:11px}header{padding-inline:3vw;gap:15px}.brand{width:145px}.pill{padding:12px 17px;gap:14px}.copy{width:47%}.service-card{padding:24px}.service-card h3{font-size:14px}.service-card p{font-size:13px}.project-grid{gap:32px 18px}.scene-status{bottom:16px}.hero-bottom{bottom:55px}h1{font-size:6vw}}@media(max-width:800px){header{height:78px;padding-inline:5vw;gap:15px}.brand{width:140px;height:56px}header nav{display:none}header .pill{margin-left:auto;font-size:12px}#menu-toggle{display:block}h1{font-size:clamp(30px,7.9vw,62px)}h2{font-size:clamp(28px,6vw,48px)}.chapter-inner{padding:120px 7vw 90px}.hero .chapter-inner{align-items:flex-end;padding-bottom:125px}.hero-copy{width:100%}.hero .kicker{margin-bottom:20px}.hero .lead{font-size:16px;margin:22px 0}.hero-bottom{font-size:8px;letter-spacing:.08em;bottom:60px}.hero-bottom span:first-child{max-width:50%;line-height:1.7}.copy,.right .copy{width:100%;max-width:600px}.copy h2{font-size:clamp(30px,7.1vw,56px)}.about .chapter-inner,.service-chapter .chapter-inner{align-items:flex-end;padding-bottom:75px}.copy>p.body{max-width:500px;font-size:15px;line-height:1.75}.copy>p:not(.kicker){font-size:18px}.about .copy:before,.service-chapter .copy:before{inset:-50px -7vw;background:linear-gradient(transparent,#030304d9 24%,#030304fa)}.service-grid{grid-template-columns:1fr 1fr}.content-inner{padding:100px 7vw}.service-card{min-height:255px}.project-grid{grid-template-columns:1fr 1fr;gap:36px 20px}.section-top{margin-bottom:35px}.tags{margin-top:22px}.kicker{font-size:11px}.product-grid{grid-template-columns:1fr;gap:24px}.product-grid article{display:grid;grid-template-columns:45% 55%}.product-grid canvas{height:100%;aspect-ratio:auto}.product-grid article>div{padding:24px}.product-grid h3{font-size:23px}.product-grid p:not(.kicker){font-size:14px}.scene-status{font-size:8px;left:7vw;bottom:20px}.timeline article{padding:25px}.timeline h3{font-size:13px}footer{flex-wrap:wrap;gap:15px 30px}footer span{width:100%}.contact-copy{padding-top:20vh}.contact h2{font-size:clamp(60px,15vw,120px)}}@media(max-width:480px){header .brand{width:117px}header .pill{padding:10px 13px;gap:8px;font-size:11px}.service-grid{gap:12px}.service-card{padding:20px 16px;min-height:290px}.service-symbol{right:17px;top:23px;font-size:25px}.service-card h3{font-size:11px}.service-card p{font-size:13px}.service-number{font-size:29px}.timeline:before{left:5px}.timeline article,.timeline article:nth-child(even){margin-left:30px;width:calc(100% - 30px)}.timeline article:after,.timeline article:nth-child(even):after{left:-30px;right:auto}.product-grid article{display:block}.product-grid canvas{height:auto;aspect-ratio:1.5}.contact p:not(.kicker){font-size:16px}.scene-status{max-width:85%;font-size:8px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}.js-motion .reveal .line>span{transform:none}}
/* Revision 4: a bolder opening, orbital products and magnetic project discs. */
.hero{height:145svh}.hero .chapter-inner{padding:140px 5.5vw 115px;align-items:center}.hero-copy{max-width:none;width:100%}.hero h1{font-size:clamp(48px,8.5vw,152px);line-height:1.02;letter-spacing:-.055em;text-shadow:0 6px 45px #0009}.hero .lead{font-size:clamp(17px,1.8vw,27px);max-width:620px;margin-top:32px}.hero .kicker{font-size:13px}.hero-wordmark{font-family:var(--display);font-size:clamp(14px,1.6vw,24px);letter-spacing:.1em;color:#fff;margin-bottom:23px}.hero .kicker{margin-bottom:24px}.hero .text-link{font-size:16px}.hero-bottom{left:5.5vw;right:5.5vw}
.projects{background:#030304c9}.project-grid{gap:48px 36px;padding:15px 0}.project-float{animation:disc-float 7s ease-in-out infinite;animation-delay:var(--float-delay)}.project-disc{display:block;position:relative;width:100%;aspect-ratio:1;border:0;border-radius:50%;padding:0;background:none;color:white;cursor:pointer;transform-style:preserve-3d;transform:perspective(800px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translate3d(var(--mx,0px),var(--my,0px),0);transition:transform .25s ease-out;touch-action:manipulation}.project-window{display:block;position:absolute;inset:0;overflow:hidden;border-radius:50%;border:1px solid #ffffff40;box-shadow:0 12px 55px #0008;transition:box-shadow .5s,border-color .5s}.project-grid .project-window canvas{width:100%;height:100%;object-fit:cover;border:0;transition:transform .65s,filter .6s}.project-grid figure:hover canvas{transform:scale(1.15);filter:saturate(1.18) brightness(1.08)}.project-disc:hover .project-window,.project-disc:focus-visible .project-window{border-color:var(--cyan);box-shadow:0 0 45px #28c5f32b,0 12px 55px #0008}.orbit-stroke{position:absolute;inset:-9px;border:1px solid #28c5f330;border-top-color:#28c5f3;border-bottom-color:#b74bd4;border-radius:50%;opacity:0;transform:rotate(-45deg) scale(.96);transition:opacity .4s,scale .5s}.project-disc:hover .orbit-stroke,.project-disc:focus-visible .orbit-stroke{opacity:1;animation:disc-orbit 5s linear infinite}.project-open{position:absolute;left:50%;bottom:16%;transform:translate(-50%,14px);opacity:0;transition:opacity .4s,transform .4s;padding:10px 15px;border:1px solid #ffffff70;background:#02060ae8;border-radius:30px;font:11px var(--display);white-space:nowrap}.project-disc:hover .project-open,.project-disc:focus-visible .project-open{opacity:1;transform:translate(-50%,0)}.project-item:focus-within .project-float,.project-item:hover .project-float{animation-play-state:paused}#project-dialog{border:1px solid #28c5f380;border-radius:4px;background:#05070c;color:white;padding:25px;max-width:min(90vw,730px);width:730px;max-height:92svh;overflow:auto}#project-dialog::backdrop{background:#000d;backdrop-filter:blur(10px)}#project-dialog canvas{display:block;width:100%;max-height:70svh;object-fit:contain}#project-dialog h2{font-size:clamp(17px,2.3vw,26px);margin:22px 0 5px;color:white}#project-close{position:absolute;right:12px;top:10px;width:42px;height:42px;border:1px solid #ffffff70;border-radius:50%;background:#030609e8;color:white;font-size:28px;z-index:1;cursor:pointer}@keyframes disc-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-13px)}}@keyframes disc-orbit{to{transform:rotate(315deg) scale(1.035)}}
.why{background:#030304b5}.timeline{max-width:1120px;gap:35px}.timeline article{background:linear-gradient(130deg,#542071dc,#b10d42ed 75%,#e70c22de);backdrop-filter:blur(12px);padding:32px 34px}.timeline h3{font-size:clamp(13px,1.15vw,18px);line-height:1.5;overflow-wrap:anywhere}.timeline p{font-size:16px;line-height:1.8}.timeline article:after{box-shadow:0 0 20px #28c5f3}
.products{background:linear-gradient(#03030495,#03030455 45%,#030304bd);overflow:hidden}.products .content-inner{padding-inline:0;max-width:1800px;padding-top:110px;padding-bottom:100px}.products .section-top{padding-inline:7vw;text-align:center;margin-bottom:18px}.product-carousel{position:relative}.product-orbit{height:660px;perspective:1500px;overflow:hidden;position:relative;touch-action:pan-y;outline-offset:-5px}.product-ring{--card-width:410px;--radius:580px;width:var(--card-width);height:580px;position:absolute;left:50%;top:28px;margin-left:calc(var(--card-width) / -2);transform-style:preserve-3d;transform:translateZ(calc(var(--radius) * -1)) rotateY(var(--rotation,0deg));transition:transform 1s cubic-bezier(.22,.7,.18,1)}.orbit-card{position:absolute;inset:0;display:flex;flex-direction:column;background:rgba(3,5,10,.94);border:1px solid #8598ac85;border-radius:2px;box-shadow:0 20px 60px #0009;backface-visibility:hidden;transform:rotateY(var(--angle)) translateZ(var(--radius));overflow:hidden;transition:border-color .5s,box-shadow .5s,opacity .6s;opacity:.55}.orbit-card.active{border-color:var(--cyan);opacity:1;box-shadow:0 0 0 1px #28c5f322,0 24px 75px #000,0 0 38px #28c5f31c}.product-photo{height:225px;position:relative;flex:none;border-bottom:1px solid #73849566;overflow:hidden}.product-photo canvas{width:100%;height:100%;object-fit:cover;display:block}.product-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 65%,#03050a90);pointer-events:none}.product-no{position:absolute;top:15px;left:17px;font:12px var(--display);border:1px solid #ffffff50;padding:7px 10px;background:#03050ad9;color:white;z-index:1}.product-copy{padding:24px 26px;flex:1;display:flex;flex-direction:column}.product-copy .kicker{font-size:10px;margin-bottom:12px}.product-copy h3{font-size:22px;line-height:1.3;color:#fff}.product-copy>p:not(.kicker){font-size:15px;line-height:1.65;color:#bdc4d0;margin:16px 0 5px}.product-copy .text-link{font-size:13px;margin-top:auto;align-self:flex-start;padding:13px 0 4px;color:var(--cyan)}.product-copy .text-link span{font-size:19px}.carousel-control{display:flex;align-items:center;justify-content:center;gap:35px;padding:0 20px}.carousel-control>button{width:52px;height:52px;border:1px solid #28c5f380;color:var(--cyan);background:#03070ddc;border-radius:50%;font-size:24px;cursor:pointer;transition:background .3s,transform .3s}.carousel-control>button:hover{background:#153443;transform:scale(1.06)}.carousel-control>div{text-align:center;min-width:210px}.carousel-hint{font-size:9px;letter-spacing:.14em;color:#8c9caa}.carousel-control p{font-family:var(--display);font-size:11px;line-height:1.6;color:#fff;margin:8px 0}.product-selectors{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:28px 7vw 0}.product-selectors button{border:1px solid #ffffff32;background:#05070dbd;color:#acb6c3;padding:11px 15px;font:10px var(--display);cursor:pointer;transition:border-color .3s,color .3s,background .3s}.product-selectors button[aria-pressed=true]{border-color:var(--cyan);color:var(--cyan);background:#12323b80}.product-selectors button:hover{border-color:#fff;color:#fff}
@media(max-width:1100px){.hero h1{font-size:8.35vw}.product-ring{--card-width:380px;--radius:500px}.product-copy{padding:22px}.product-copy h3{font-size:21px}.product-copy>p:not(.kicker){font-size:14px}.project-grid{gap:40px 27px}}@media(max-width:800px){.hero .chapter-inner{padding:120px 7vw 120px;align-items:flex-end}.hero h1{font-size:8.4vw}.hero .hero-wordmark{margin-bottom:15px;font-size:18px}.hero .kicker{font-size:11px;margin-bottom:20px}.hero .lead{font-size:18px;max-width:340px}.hero{height:135svh}.product-orbit{perspective:1100px;height:630px}.product-ring{--card-width:340px;--radius:395px;height:555px;top:28px}.product-photo{height:185px}.product-copy{padding:22px}.product-copy>p:not(.kicker){font-size:14px;line-height:1.7}.product-copy h3{font-size:20px}.timeline p{font-size:15px}.timeline article{padding:26px}.timeline h3{font-size:13px}.project-grid{gap:38px 24px}.project-open{font-size:9px;padding:8px 10px;opacity:1;transform:translate(-50%,0)}.carousel-control{gap:20px}}@media(max-width:400px){.product-ring{--card-width:290px;--radius:338px;height:600px}.product-orbit{height:655px}.product-copy{padding:20px}.product-copy h3{font-size:18px}.product-copy>p:not(.kicker){font-size:14px}.carousel-control>div{min-width:170px}.carousel-control{gap:12px}.carousel-control>button{width:44px;height:44px}.product-selectors{gap:7px}.product-selectors button{font-size:9px;padding:10px}.hero h1{font-size:8.1vw}}@media(prefers-reduced-motion:reduce){.project-float,.orbit-stroke{animation:none!important}.project-disc{transform:none!important}.product-ring{transition:none}.project-grid figure:hover canvas{transform:none}}@media(prefers-reduced-transparency:reduce){.orbit-card{background:#03050a}.products,.projects,.why{background:#030304}}
.product-ring{height:655px}.product-orbit{height:735px}.product-copy{min-height:0;overflow-y:auto;scrollbar-color:#28c5f366 #05070c;scrollbar-width:thin}.project-dialog-open{overflow:hidden}@media(max-width:800px){.product-ring{height:660px}.product-orbit{height:735px}}@media(max-width:400px){.product-ring{height:680px}.product-orbit{height:755px}}
/* Why LED: a photographic, scroll-controlled dissolve sequence. */
/* Conversion-focused single-page revision. */
.hero .lead{max-width:730px;font-size:clamp(18px,1.75vw,26px);text-shadow:0 2px 20px #000;line-height:1.6}.hero-actions{display:flex;align-items:center;gap:32px;flex-wrap:wrap}.hero-actions .pill{font-size:16px}.hero-actions .text-link{font-size:15px}.hero{height:120svh}.selected-work{position:relative;background:#05060bed;padding:72px 7vw 82px;border-block:1px solid #ffffff18}.proof-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:35px}.proof-heading h2{font-size:clamp(26px,3.2vw,48px)}.proof-heading .kicker{font-size:12px;margin-bottom:14px}.proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.proof-card{display:block;border:1px solid #ffffff35;background:#080b13;overflow:hidden;transition:border-color .3s}.proof-card:hover{border-color:var(--cyan)}.proof-card canvas{display:block;width:100%;aspect-ratio:1.65;object-fit:cover;transition:transform .7s}.proof-card:hover canvas{transform:scale(1.025)}.proof-card>div{padding:23px}.proof-card h3{font-size:15px;line-height:1.5}.proof-card p{font-size:15px;line-height:1.7;color:#aeb7c8;margin:10px 0 0}.service-enquiry{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:35px;padding-top:28px;border-top:1px solid #ffffff26}.service-enquiry p{font-size:17px;color:#c7cbd5;line-height:1.6}.contact{height:auto;min-height:100svh;background:linear-gradient(90deg,#030408e8,#030408c9)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding:140px 7vw 100px;max-width:1700px;margin:auto}.contact .contact-copy{padding:0;text-align:left}.contact h2{font-size:clamp(42px,5.4vw,88px);line-height:1.1}.contact .contact-copy>p:not(.kicker){font-size:23px;line-height:1.6;margin:25px 0 0}.contact .contact-copy>p.contact-detail{font-size:17px;line-height:1.8;color:#aeb7c6;max-width:440px;margin-top:15px}.contact-topics{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.contact-topics span{font-size:13px;color:#c1cad6;border:1px solid #ffffff35;padding:9px 12px}.enquiry-form{padding:35px;border:1px solid #28c5f390;background:#070a11f2;display:flex;flex-direction:column;box-shadow:0 20px 60px #0005}.enquiry-form h3{font-size:20px;margin-bottom:25px;line-height:1.4}.enquiry-form label{font-size:15px;color:#d2d9e4;margin:0 0 10px}.enquiry-form input,.enquiry-form textarea{width:100%;border:1px solid #ffffff35;border-radius:0;background:#020409;color:#fff;font:16px/1.6 Inter,Arial,sans-serif;padding:13px 15px;margin:0 0 22px;outline-offset:3px}.enquiry-form input:focus,.enquiry-form textarea:focus{outline:1px solid var(--cyan);border-color:var(--cyan)}.enquiry-form textarea{resize:vertical;min-height:150px}.enquiry-form input::placeholder,.enquiry-form textarea::placeholder{color:#7c8799}.enquiry-form .form-note{font-size:13px;line-height:1.6;color:#aeb7c6;margin:0 0 22px}.enquiry-form .pill{border:0;cursor:pointer;margin:0;align-self:flex-start}.enquiry-form .pill:disabled{cursor:wait;opacity:.65}.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#enquiry-status{font-size:15px;line-height:1.7;margin:20px 0 0;color:#c4d2e4}#enquiry-status:empty{display:none}#enquiry-status[data-state=success]{color:#90e8ff}#enquiry-status[data-state=error]{color:#ffb5c3}
@media(max-width:1000px){.contact-layout{gap:4vw;padding-inline:6vw}.enquiry-form{padding:25px}.proof-card>div{padding:20px}.proof-card h3{font-size:13px}}
@media(max-width:800px){.hero{height:115svh}.hero .lead{max-width:510px;font-size:18px}.hero .chapter-inner{padding-bottom:115px}.hero-actions{gap:18px}.hero-actions .pill{padding:15px 20px;font-size:15px}.hero-actions .text-link{font-size:14px}.proof-heading{align-items:start;flex-direction:column;gap:12px}.proof-grid{grid-template-columns:1fr;gap:18px}.proof-card{display:grid;grid-template-columns:42% 1fr;align-items:center}.proof-card canvas{height:100%;min-height:180px;aspect-ratio:1;object-fit:cover}.proof-card h3{font-size:14px}.proof-card p{font-size:14px}.selected-work{padding:55px 7vw}.service-enquiry{align-items:start;flex-direction:column;gap:12px}.contact-layout{grid-template-columns:1fr;padding:105px 7vw 75px;gap:40px}.contact h2{font-size:clamp(44px,10vw,72px)}.contact .contact-copy>p:not(.kicker){font-size:21px}.contact .contact-copy>p.contact-detail{font-size:16px}.enquiry-form{padding:25px}.enquiry-form h3{font-size:18px}}
@media(max-width:390px){.hero-actions{gap:10px}.hero-actions .pill{font-size:14px;padding:14px 17px}.proof-card>div{padding:15px}.proof-card h3{font-size:12px}.proof-card p{font-size:13px}}
/* Quiet client marks, original artwork revealed on hover, focus or tap. */
.client-banner{position:relative;padding:30px 0 25px;background:#030408;border-top:1px solid #28c5f326;border-bottom:1px solid #a452d42b;overflow:hidden}.logo-filter-defs{position:absolute;pointer-events:none}.client-banner-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 7vw 12px}.client-banner-heading h2{font:12px/1.7 Inter,Arial,sans-serif;letter-spacing:.17em;color:#98a3b5}.client-banner-heading>button{flex:none;background:none;border:0;color:#8492a6;font-size:12px;cursor:pointer;padding:10px}.client-banner-heading>button:hover{color:var(--cyan)}.client-banner-heading>button span{margin-left:10px;color:var(--cyan)}.client-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.client-track{display:flex;width:max-content;animation:client-drift 75s linear infinite;will-change:transform}.client-group{display:flex;align-items:center;gap:48px;padding-right:48px;flex:none}.client-logo{position:relative;flex:0 0 190px;width:190px;height:116px;background:transparent;border:0;padding:15px 10px 25px;cursor:pointer;border-radius:0}.client-logo svg{display:block;width:100%;height:100%;overflow:visible}.logo-ghost{opacity:.14;transition:opacity .4s}.logo-edge{opacity:.82;transition:opacity .4s}.logo-original{opacity:0;transition:opacity .45s}.logo-caption{position:absolute;left:0;right:0;bottom:3px;color:#b9c5d7;font-size:12px;opacity:0;transition:opacity .3s}.client-logo:hover .logo-original,.client-logo:focus-visible .logo-original,.client-logo.is-revealed .logo-original{opacity:1}.client-logo:hover .logo-edge,.client-logo:focus-visible .logo-edge,.client-logo.is-revealed .logo-edge{opacity:0}.client-logo:hover .logo-ghost,.client-logo:focus-visible .logo-ghost,.client-logo.is-revealed .logo-ghost{opacity:0}.client-logo:hover .logo-caption,.client-logo:focus-visible .logo-caption,.client-logo.is-revealed .logo-caption{opacity:1}.client-logo:hover,.client-logo:focus-visible,.client-logo.is-revealed{background:radial-gradient(ellipse,#bdc5d324,transparent 75%)}.client-banner.is-paused .client-track{animation-play-state:paused}@media(hover:hover) and (pointer:fine){.client-banner:hover .client-track,.client-banner:focus-within .client-track{animation-play-state:paused}}@keyframes client-drift{to{transform:translateX(-50%)}}
@media(max-width:800px){.client-banner{padding-block:22px 15px}.client-banner-heading{padding-inline:7vw;gap:10px}.client-banner-heading h2{font-size:11px;letter-spacing:.1em;max-width:220px}.client-logo{width:150px;flex-basis:150px;height:100px}.client-group{gap:28px;padding-right:28px}.client-track{animation-duration:65s}.client-marquee{mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}}
@media(prefers-reduced-motion:reduce){.client-track{animation:none;will-change:auto}.client-marquee{overflow-x:auto;mask-image:none}.client-group[aria-hidden=true]{display:none}#logo-motion{display:none}.logo-ghost,.logo-edge,.logo-original{transition:none}}

/* Why LED — kinetic typography, no image or secondary 3D scene. */
.why-journey{background:#030408;padding:0}.why-stage{position:relative;isolation:isolate;min-height:100svh;padding:115px 7vw 50px;overflow:hidden;background:radial-gradient(ellipse at 85% 50%,#21123a70,transparent 62%),#030408}.why-top,.why-benefits,.why-bottom{position:relative;z-index:1}.why-top h2{font-size:clamp(24px,2.6vw,42px)}.why-top .kicker{font-size:12px;margin-bottom:12px}.why-benefits{margin:40px 0}.why-benefit{position:relative;padding:50px 0;--entry:1;--travel:0;--change:1}.why-number{position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:-1;font:clamp(180px,29vw,430px)/1 var(--display);color:transparent;-webkit-text-stroke:1px #28c5f326;pointer-events:none;user-select:none}.why-benefit h3{font:600 clamp(34px,5.8vw,88px)/1.12 var(--display);letter-spacing:-.045em;max-width:100%;margin:0;overflow-wrap:normal;animation:none;filter:none;text-shadow:none}.why-word{display:block;transform-origin:left center}.why-benefit p{font-size:clamp(16px,1.35vw,20px);line-height:1.8;color:#c5cad6;max-width:660px;margin:30px 0 0;padding-left:22px;border-left:1px solid #28c5f3;transform:none}.why-timewords{font:14px var(--display);letter-spacing:.14em;color:#9ba7ba;position:relative;margin-bottom:22px;height:20px}.why-timewords span{position:absolute;margin-left:10px;color:var(--cyan)}.why-today{opacity:calc(1 - var(--change));transform:translateY(calc(var(--change)*-10px))}.why-tomorrow{opacity:var(--change);transform:translateY(calc((1 - var(--change))*10px))}
.why-scroll{font-size:12px;letter-spacing:.16em;color:#a7b8c6;display:flex;align-items:center;gap:18px;margin:0 0 20px}.why-scroll span{color:var(--cyan);font-size:20px}.why-steps{display:flex;gap:18px;width:100%}.why-steps button{flex:1;position:relative;min-height:60px;text-align:left;border:0;border-top:1px solid #ffffff32;background:transparent;color:#959eae;padding:12px 8px;cursor:pointer}.why-steps button span{font:12px var(--display);margin-right:10px;color:#637083}.why-steps button b{font-size:14px;font-weight:400}.why-steps button i{position:absolute;top:-1px;left:0;height:2px;width:100%;background:var(--cyan);transform-origin:left;transform:scaleX(var(--fill,0))}.why-steps button[aria-current=step],.why-steps button:hover{color:#fff}.why-steps button[aria-current=step] span{color:var(--cyan)}
.why-enhanced .why-journey{height:435svh}.why-enhanced .why-stage{position:sticky;top:0;height:100svh;min-height:0;display:grid;grid-template-rows:auto 1fr auto;gap:20px}.why-enhanced .why-benefits{display:grid;align-self:center;margin:0;min-width:0}.why-enhanced .why-benefit{grid-area:1/1;padding:0;opacity:0;visibility:hidden;transition:none}.why-bottom{align-self:end}.why-journey:not(.is-cinematic) .why-bottom{display:none}.why-journey:not(.is-cinematic) .why-benefit{border-bottom:1px solid #ffffff25}.why-journey:not(.is-cinematic) .why-number{font-size:clamp(120px,25vw,300px)}
@media(max-width:800px){.why-stage{padding:95px 7vw 30px}.why-enhanced .why-journey{height:420svh}.why-top h2{font-size:24px}.why-benefit h3{font-size:clamp(25px,6.5vw,48px)}#why-benefit-1 h3{font-size:clamp(18px,4.35vw,34px);letter-spacing:-.045em}#why-benefit-3 h3{font-size:clamp(29px,8vw,62px)}.why-benefit p{font-size:16px;line-height:1.7;margin-top:28px;padding-left:15px}.why-number{font-size:46vw;top:10%;right:-3vw;-webkit-text-stroke-color:#28c5f330}.why-timewords{font-size:11px;letter-spacing:.05em}.why-scroll{display:none}.why-steps{gap:10px}.why-steps button{min-height:44px;text-align:center;padding:10px 0}.why-steps button span{font-size:14px;margin:0}.why-steps button b{display:none}}
@media(max-height:760px) and (min-width:801px){.why-stage{padding-top:100px;padding-bottom:30px}.why-benefit h3{font-size:clamp(32px,4.8vw,67px)}#why-benefit-1 h3{font-size:clamp(26px,3.9vw,54px)}#why-benefit-3 h3{font-size:clamp(40px,7vw,92px)}.why-benefit p{font-size:16px;line-height:1.6;margin-top:20px}.why-scroll{display:none}}
@media(prefers-reduced-motion:reduce){.why-word,.why-benefit h3,.why-timewords span{transform:none!important}.why-today{display:none}.why-tomorrow{opacity:1}.why-benefit{opacity:1}}
/* Fuller solution descriptions stay readable within the existing orbit. */
.product-copy>p:not(.kicker){font-size:16px;line-height:1.65}.product-ring{height:755px}.product-orbit{height:835px}.product-copy h3{font-size:21px}.product-copy .text-link{flex-shrink:0}.carousel-control>div{min-width:0;max-width:360px}
@media(max-width:800px){.product-ring{height:755px}.product-orbit{height:835px}.product-copy>p:not(.kicker){font-size:16px}.product-copy h3{font-size:20px}}
@media(max-width:400px){.product-ring{height:795px}.product-orbit{height:875px}.product-copy h3{font-size:19px}.product-selectors button{font-size:10px}}
/* Expanded service copy; scene identifiers and scroll chapter heights stay unchanged. */
.service-card p{font-size:16px;line-height:1.65;max-width:36ch}.service-card{min-height:310px}.service-chapter .copy h2{font-size:clamp(30px,3.3vw,54px);line-height:1.13}.service-chapter .copy>p.body{font-size:16px;line-height:1.65;margin-top:20px}.service-chapter .copy>p.body+p.body{margin-top:12px}.service-chapter .tags{margin-top:22px;gap:8px;flex-wrap:wrap}.service-chapter .service-cta{display:inline-flex;margin-top:18px;font-size:14px;color:var(--cyan)}
@media(max-width:800px){.service-chapter .chapter-inner{padding-top:105px;padding-bottom:50px}.service-chapter .copy h2{font-size:clamp(28px,6.2vw,44px)}.service-card{min-height:340px}.service-card p{font-size:16px}.service-chapter .copy>p.body{font-size:16px;line-height:1.6}.service-chapter .tags{font-size:11px;margin-top:18px}}
@media(max-width:480px){.service-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:24px}.service-card h3{font-size:17px}.service-card p{font-size:16px;max-width:none}.service-number{margin-bottom:20px}}
/* Mobile services: give the screen a clear opening, then let the full copy scroll naturally. */
@media(max-width:800px){
 .service-chapter{height:auto;min-height:125svh}
 .service-chapter .chapter-inner{position:relative;display:block;min-height:125svh;padding:48svh 7vw 64px}
 .service-chapter .copy,.service-chapter.right .copy{width:100%;max-width:600px;margin-inline:auto;padding:26px 0 0}
 .service-chapter .copy:before{inset:0 -7vw -64px;background:linear-gradient(to bottom,transparent,#030304ed 28px,#030304fa 100px)}
 .service-chapter .copy .kicker{position:relative;margin-bottom:16px}
 .service-chapter .copy h2{font-size:clamp(28px,6.2vw,44px)}
}

/* Apply tint to the complete SVG surface: avoids cross-SVG filter failures on iOS. */
.client-logo svg{filter:brightness(0) saturate(100%) invert(70%) sepia(78%) saturate(1340%) hue-rotate(153deg) brightness(102%);transition:filter .35s}
.client-logo:nth-child(3n+2) svg{filter:brightness(0) saturate(100%) invert(65%) sepia(65%) saturate(2530%) hue-rotate(222deg) brightness(108%)}
.client-logo:nth-child(3n) svg{filter:brightness(0) saturate(100%) invert(39%) sepia(94%) saturate(2640%) hue-rotate(328deg) brightness(112%)}
.client-logo .logo-edge{display:none}.client-logo .logo-ghost{opacity:.8}
.client-logo:hover svg,.client-logo:focus-visible svg,.client-logo.is-revealed svg{filter:none}
.client-logo:hover .logo-ghost,.client-logo:focus-visible .logo-ghost,.client-logo.is-revealed .logo-ghost{opacity:0}
.client-track{animation:none!important;transform:none!important;will-change:auto}
.client-marquee{overflow-x:auto;scrollbar-width:none;mask-image:none;-webkit-mask-image:none;scroll-behavior:auto;overflow-anchor:none}
.client-marquee::-webkit-scrollbar{display:none}
.client-logo-image{display:block;width:100%;height:100%;object-fit:contain;opacity:1;filter:brightness(0) saturate(100%) invert(70%) sepia(78%) saturate(1340%) hue-rotate(153deg) brightness(102%)}
.client-logo:nth-child(3n+2) .client-logo-image{filter:brightness(0) saturate(100%) invert(65%) sepia(65%) saturate(2530%) hue-rotate(222deg) brightness(108%)}
.client-logo:nth-child(3n) .client-logo-image{filter:brightness(0) saturate(100%) invert(39%) sepia(94%) saturate(2640%) hue-rotate(328deg) brightness(112%)}
.client-logo.is-revealed .client-logo-image,.client-logo:focus-visible .client-logo-image{filter:none}
.client-logo.is-revealed,.client-logo:focus-visible{background:#dce2e8}
.client-logo.is-revealed .logo-caption,.client-logo:focus-visible .logo-caption{color:#17212b}
@media(hover:hover) and (pointer:fine){.client-logo:hover .client-logo-image{filter:none}.client-logo:hover{background:#dce2e8}.client-logo:hover .logo-caption{color:#17212b}}
/* Company introduction: full agreed copy with natural height, never clipped. */
.about{height:auto;min-height:115svh}.about .chapter-inner{position:relative;padding-block:120px 85px}.about .copy{width:min(600px,48%);max-width:600px}.about .copy h2{font-size:clamp(30px,3.7vw,58px)}.about .copy>p.body{max-width:560px;font-size:16px;line-height:1.75;margin-top:18px}.about .copy>p.about-lead{font-size:21px;line-height:1.5;margin-top:25px}.about .copy>p.about-signoff{font-size:17px;line-height:1.6;color:#fff;margin-top:24px}
@media(max-width:800px){.about .chapter-inner{display:block;padding:42svh 7vw 65px}.about .copy{width:100%;max-width:600px;padding-top:28px}.about .copy:before{inset:0 -7vw -65px;background:linear-gradient(transparent,#030304ed 28px,#030304fa 100px)}.about .copy h2{font-size:clamp(28px,7.1vw,48px)}.about .copy>p.about-lead{font-size:20px}.about .copy>p.body{font-size:16px;line-height:1.7}}
/* Project case studies: circular entry points and an accessible in-page dialog. */
.project-placeholder{display:flex;width:100%;height:100%;aspect-ratio:1;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:radial-gradient(ellipse at 25% 20%,#162f3d,#100d1d 65%,#030408);border:1px solid #28c5f359;border-radius:50%;color:var(--cyan)}.project-placeholder b{font:clamp(30px,4vw,65px)/1 var(--display);letter-spacing:-.04em}.project-placeholder small{font:10px/1.5 var(--display);letter-spacing:.09em;color:#a8b5c6}.project-window>img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover;border-radius:50%}.project-summary{font-size:14px;line-height:1.55;color:#aab6c8;margin:8px 0 0}.project-grid figcaption{font-size:12px}
#project-dialog{width:1060px;max-width:calc(100vw - 40px);max-height:90svh;padding:0;overscroll-behavior:contain}#project-close{position:sticky;display:block;top:12px;margin:12px 12px -54px auto;z-index:3}.project-dialog-layout{display:grid;grid-template-columns:42% 58%}.project-detail-media{background:#080d15;min-width:0;display:flex;align-items:center;justify-content:center;padding:30px}.project-detail-media img{display:block;width:100%;height:auto;max-height:65svh;object-fit:contain}.project-detail-media img[hidden],#project-photo-placeholder[hidden]{display:none}#project-photo-placeholder{text-align:center;color:#9eacbf;padding:35px 0}#project-monogram{display:block;font:clamp(60px,9vw,120px)/1 var(--display);color:transparent;-webkit-text-stroke:1px var(--cyan);margin-bottom:28px}#project-photo-placeholder p{font-size:14px;line-height:1.6}.project-detail-copy{padding:64px 38px 40px}#project-dialog h2{font-size:clamp(26px,3vw,38px);line-height:1.2;margin:0 0 14px;overflow-wrap:anywhere}.project-detail-copy .kicker{font-size:12px;line-height:1.7;margin-bottom:14px}#project-subtitle{font-size:18px;color:var(--cyan);line-height:1.5;margin:0 0 25px}#project-story p{font-size:16px;line-height:1.75;color:#c4ccd8;margin:0 0 18px}.project-detail-copy h3{font-size:14px;letter-spacing:.08em;margin:28px 0 12px}#project-scope{padding-left:20px;margin:0 0 28px;font-size:15px;line-height:1.7;color:#c4ccd8}#project-scope li{padding:3px 0}#project-enquire{font-size:14px;line-height:1.5;white-space:normal}
@media(max-width:800px){#project-dialog{max-width:calc(100vw - 24px);max-height:92svh}.project-dialog-layout{grid-template-columns:1fr}.project-detail-media{padding:50px 25px 22px;min-height:210px}#project-photo-placeholder{padding:15px 0}#project-monogram{font-size:65px;margin-bottom:16px}.project-detail-copy{padding:28px 24px 34px}.project-detail-media img{max-height:40svh}.project-grid figcaption{font-size:11px}.project-placeholder small{font-size:9px}.project-placeholder b{font-size:32px}.project-summary{font-size:14px}}

/* Service routing field for tailored enquiry follow-up. */
.enquiry-form select{width:100%;border:1px solid #ffffff35;border-radius:0;background-color:#020409;color:#fff;font:16px/1.6 Inter,Arial,sans-serif;padding:13px 44px 13px 15px;margin:0 0 22px;outline-offset:3px;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--cyan) 50%),linear-gradient(135deg,var(--cyan) 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;cursor:pointer}.enquiry-form select:invalid{color:#7c8799}.enquiry-form select option{background:#070a11;color:#fff}.enquiry-form select:focus{outline:1px solid var(--cyan);border-color:var(--cyan)}

/* Consistent Why LED headlines and fixed reading positions. */
#why-led .why-benefit h3{font:600 clamp(28px,4vw,60px)/1.2 var(--display);letter-spacing:-.035em;color:var(--cyan);transform:none;min-height:var(--why-heading-height,0px);margin:0;overflow-wrap:normal}
#why-led .why-word{font-size:1em;color:inherit;transform:none;background:none;-webkit-text-stroke:0;text-shadow:none;letter-spacing:inherit}
#why-led .why-benefit{align-self:start}
#why-led .why-benefit p{margin-top:28px}
@media(max-width:800px){#why-led .why-benefit h3{font-size:clamp(20px,4.9vw,34px);overflow-wrap:anywhere}#why-led .why-benefit p{margin-top:24px}}
@media(max-height:760px) and (min-width:801px){#why-led .why-benefit h3{font-size:clamp(26px,3.5vw,48px)}}

/* Project photographs: full-width viewing area and manual thumbnail selection. */
#project-dialog.has-photos .project-dialog-layout{grid-template-columns:1fr}
#project-dialog.has-photos .project-detail-media{display:flex;flex-direction:column;gap:16px;padding:56px 24px 24px}
#project-dialog.has-photos #project-detail-image{width:100%;height:50svh;max-height:560px;object-fit:contain;background:#030508;border:1px solid #28c5f340}
#project-photo-thumbs{display:flex;gap:12px;justify-content:center;width:100%}
#project-photo-thumbs[hidden]{display:none}
#project-photo-thumbs button{width:100px;height:66px;padding:3px;border:1px solid #ffffff40;border-radius:3px;background:#060911;cursor:pointer;opacity:.7}
#project-photo-thumbs button[aria-pressed=true],#project-photo-thumbs button:hover,#project-photo-thumbs button:focus-visible{opacity:1;border-color:var(--cyan);outline-offset:4px}
#project-photo-thumbs img{width:100%;height:100%;object-fit:cover}
#project-dialog.has-photos .project-detail-copy{padding-top:24px}
@media(max-width:800px){#project-dialog.has-photos .project-detail-media{padding:56px 14px 18px;gap:12px}#project-dialog.has-photos #project-detail-image{height:30svh}#project-photo-thumbs button{width:84px;height:58px}}

#project-dialog.has-photos #project-detail-image{height:auto;max-height:none;aspect-ratio:1.6;object-fit:cover}

/* A mouse/trackpad desktop preview keeps the alternating composition. */
@media(min-width:600px) and (max-width:800px) and (pointer:fine){
 .service-chapter{height:auto;min-height:125svh}
 .service-chapter .chapter-inner{position:sticky;top:0;display:flex;align-items:center;min-height:100svh;padding:110px 5vw 65px}
 .service-chapter.right .chapter-inner{justify-content:flex-end}
 .service-chapter .copy,.service-chapter.right .copy{width:45%;max-width:none;margin:0;padding:0}
 .service-chapter .copy h2{font-size:clamp(24px,3.8vw,31px)}
 .service-chapter .copy>p.body{font-size:16px;line-height:1.6}
 .about .chapter-inner{display:flex;align-items:center;padding:110px 5vw 65px}
 .about .copy{width:45%;max-width:none;padding:0}
 .about .copy h2{font-size:clamp(25px,4vw,33px)}
 .about .copy>p.about-lead{font-size:18px}
 .about .copy:before,.service-chapter .copy:before{inset:-35px -20px;background:radial-gradient(ellipse,#030304e8,#03030480 60%,transparent 75%)}
}

#project-photo-thumbs{flex-wrap:wrap}#project-photo-thumbs button{flex-shrink:0}

#project-photo-thumbs.many{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;padding:4px 2px 10px;scrollbar-width:thin;scrollbar-color:var(--cyan) #111827}

/* Launch essentials: form consistency and lightweight legal page. */
.enquiry-form select{width:100%;border:1px solid #ffffff35;border-radius:0;background:#020409;color:#fff;font:16px/1.6 Inter,Arial,sans-serif;padding:13px 42px 13px 15px;margin:0 0 22px;outline-offset:3px;color-scheme:dark;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#28c5f3 50%),linear-gradient(135deg,#28c5f3 50%,transparent 50%);background-position:calc(100% - 19px) 50%,calc(100% - 13px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}.enquiry-form select:focus{outline:1px solid var(--cyan);border-color:var(--cyan)}.enquiry-form .form-note a{color:#8ae6ff;text-decoration:underline;text-underline-offset:3px}footer>a:not(.brand):hover{color:var(--cyan)}
.legal-page{min-height:100svh;background:radial-gradient(circle at 85% 10%,#17235c88,transparent 35%),#030304}.legal-header{position:relative}.legal-main{position:relative;z-index:2;width:min(850px,86vw);margin:0 auto;padding:170px 0 110px}.legal-main h1{font-size:clamp(40px,7vw,88px);margin-bottom:18px}.legal-updated{color:#81899a;margin-bottom:55px}.legal-main section{border-top:1px solid #ffffff24;padding:28px 0}.legal-main section h2{font-size:clamp(18px,2vw,26px);letter-spacing:0;margin-bottom:14px}.legal-main section p{color:#c6cbd5;font-size:16px;line-height:1.8;margin:0}.legal-main section a{color:var(--cyan);text-decoration:underline;text-underline-offset:3px}@media(max-width:800px){.legal-main{padding-top:130px}.legal-header{position:fixed}.legal-page footer{align-items:flex-start}}

.analytics-choice{position:fixed;bottom:20px;left:20px;right:20px;z-index:2000;max-width:760px;margin:auto;background:#080c14;border:1px solid #2bbde0;padding:20px;box-shadow:0 12px 50px #0009;display:flex;align-items:center;gap:24px;font:14px/1.5 Arial,sans-serif;color:#eee}.analytics-choice[hidden]{display:none}.analytics-choice strong{font-size:16px}.analytics-choice p{margin:6px 0 0}.analytics-choice a{color:#50c9e8}.analytics-buttons{display:flex;gap:8px;flex-shrink:0}.analytics-buttons button{padding:10px 14px;border:1px solid #50c9e8;background:transparent;color:#fff;cursor:pointer;border-radius:4px;font:inherit}.analytics-buttons button:first-child{background:#27bfe5;color:#030304}.analytics-settings{background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer}.analytics-settings:focus-visible,.analytics-buttons button:focus-visible{outline:2px solid #fff;outline-offset:4px}@media(max-width:600px){.analytics-choice{bottom:12px;left:12px;right:12px;display:block;padding:16px}.analytics-buttons{margin-top:14px;flex-wrap:wrap}}
