:root{--e-global-color-primary:#238BF9;--e-global-color-secondary:#2CDDC5;--brand-gradient:linear-gradient(240deg,var(--e-global-color-secondary) 0%,var(--e-global-color-primary) 100%);--bg:#07131f;--accent:var(--e-global-color-secondary)}
.brand{letter-spacing:0;gap:0}.brand img{display:block;width:190px;height:auto}.nav{background:#07131fee}.nav-contact{border-color:#238bf965}.nav-contact:hover{background:#238bf922}em{color:#2cddc5;background-image:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero{background:radial-gradient(ellipse at 85% 45%,#12365375,transparent 65%),#07131f}.hero-preview{border-color:#3a7da4;background:#0c2639}.hero-topline>span:first-child{color:#7cc9ef}.live-dot{background-image:var(--brand-gradient);box-shadow:0 0 18px #2cddc566}.page-progress span,.story-progress span{background-image:var(--brand-gradient)}#ascii{opacity:.8}.hero .asterisk{color:#2cddc5}.intro .cross{color:#238bf9}.intro{background:#edf5fa}.statement span{color:#63859b}.contact{background-image:var(--brand-gradient);color:#051b2d}.contact h2 em{background:none;-webkit-text-fill-color:#eefaff;color:#eefaff}.contact-cta{color:#e4f8ff;background:#071b2a}.contact .section-label{opacity:.8}.contact .eyebrow{color:#083453}.contact-cta:hover{background:#123c54}.contact h2>span{color:#eefaff}.motion-control span{color:#2cddc5}.story{background:radial-gradient(ellipse at 80% 45%,#0e3650aa,transparent 70%),#081824}.story-visual{padding-left:5%;align-items:center;justify-content:center}.story-visual .visual-label{align-self:flex-end;margin-bottom:15px}.experience-orbit{position:relative;width:min(100%,510px);aspect-ratio:1;isolation:isolate;perspective:1200px}.experience-ring{position:absolute;inset:0;border:1px solid #238bf950;border-radius:50%;pointer-events:none;transform:rotateX(12deg) rotateZ(var(--orbit-angle,0deg))}.ring-one{inset:-4%;border-left-color:#2cddc5;border-right-color:#238bf9;border-top-color:transparent;box-shadow:0 0 30px #238bf909}.ring-two{inset:-10%;border-style:dashed;border-color:#4ccae028;transform:rotateX(20deg) rotateZ(calc(var(--orbit-angle,0deg) * -1))}.experience-portal{position:absolute;inset:4%;padding:0;border-radius:50%;overflow:hidden;background:#050d15;box-shadow:0 18px 80px #0005,0 0 50px #238bf919;transform:rotateY(var(--portal-tilt,-7deg));transition:box-shadow .3s;outline-offset:8px!important}.experience-portal:after{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid #7edce452;border-radius:50%;box-shadow:inset 0 0 50px #07131f22}.experience-portal img{width:100%;height:100%;display:block;object-fit:cover;object-position:35%;transition:transform .7s;filter:saturate(.9)}.experience-portal:hover img{transform:scale(1.06)}.portal-zoom{position:absolute;right:19%;bottom:9%;background-image:var(--brand-gradient);color:#041725;display:grid;place-items:center;width:48px;height:48px;font-size:25px;border-radius:50%;box-shadow:0 4px 35px #0006}.orbit-node{position:absolute;left:calc(50% - 5px);top:-5%;width:10px;height:10px;background:#2cddc5;border-radius:50%;box-shadow:0 0 25px #2cddc5;transform-origin:5px 280px;transform:rotate(var(--orbit-angle,0deg));pointer-events:none}.orbit-word{position:absolute;bottom:3%;left:-6%;font:8px monospace;letter-spacing:2px;writing-mode:vertical-rl;transform:rotate(180deg);color:#5d9fba;pointer-events:none}.experience-meta{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:30px;font:13px var(--display);color:#e7f6ff}.experience-open{font-size:10px;color:#69d5dc;padding:10px 0;white-space:nowrap}.story-visual .visual-caption{margin-top:4px;width:100%;padding:0;font-size:9px;color:#8eacbe}.experience-open:hover{text-decoration:underline}
.work{padding:0;background:#061521;color:#f0f6fa;position:relative}.work-journey{position:relative;height:560vh}.work-sticky{height:100svh;min-height:660px;position:sticky;top:0;padding:110px var(--pad) 30px;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,#124c683f,transparent 64%)}.work .section-label{position:relative;z-index:3;opacity:.7}.work-heading{position:relative;z-index:3;margin:28px 0 0;align-items:center;pointer-events:none;gap:30px}.work h2{font:600 clamp(44px,5.3vw,85px)/1 var(--display);letter-spacing:-.055em;white-space:nowrap}.work-heading>p{font-size:11px;margin:0;line-height:1.8;color:#a2b5c6}.gallery-space{position:absolute;top:230px;bottom:170px;left:0;right:0;perspective:1200px;perspective-origin:50% 45%;isolation:isolate}.orbit-gallery{position:absolute;inset:0;transform-style:preserve-3d}.orbit-card{position:absolute;width:clamp(350px,44vw,660px);height:100%;max-height:390px;left:50%;top:50%;padding:0;background:#0a1d2a;border:1px solid #75c8e749;border-radius:8px;overflow:hidden;box-shadow:0 30px 65px #0007;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform,opacity;transform:translate(-50%,-50%);text-align:left;outline-offset:7px}.orbit-card img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.orbit-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,#020e1ed9);pointer-events:none}.orbit-card .orbit-card-label{position:absolute;bottom:17px;left:20px;right:20px;z-index:2;display:flex;justify-content:space-between;align-items:center;font:10px monospace;letter-spacing:1.4px;color:#fff}.orbit-card-label b{display:grid;place-items:center;width:33px;height:33px;border:1px solid #ffffff77;border-radius:50%;font-size:18px}.orbit-card:hover .orbit-card-label b{background-image:var(--brand-gradient);color:#07131f;border-color:transparent}.gallery-orbit{position:absolute;width:85%;height:200%;left:7.5%;top:-35%;border:1px solid #2cddc529;border-radius:50%;transform:rotateX(75deg);pointer-events:none}.gallery-orbit:after{content:'';position:absolute;inset:12%;border:1px dashed #238bf92c;border-radius:50%}.gallery-axis{position:absolute;left:0;right:0;top:45%;font:500 clamp(60px,11vw,180px)/1 var(--display);text-align:center;color:#ffffff03;white-space:nowrap;letter-spacing:-6px;pointer-events:none}.gallery-caption{position:absolute;bottom:68px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.gallery-caption .eyebrow{font:9px monospace;letter-spacing:1.8px;color:#63bfd8;margin:0 0 9px}.gallery-caption h3{font:500 clamp(24px,2.4vw,36px)/1.1 var(--display);letter-spacing:-.8px;margin:0 0 9px}.gallery-caption>div>p:last-child{font-size:12px;color:#a2b5c6;margin:0;line-height:1.6}.gallery-controls{display:flex;gap:18px;align-items:center}.gallery-controls button{width:42px;height:42px;border:1px solid #7eacc856;border-radius:50%;font-size:20px;color:#b6dfe9}.gallery-controls button:hover{background-image:var(--brand-gradient);color:#07131f}.gallery-controls button:disabled{opacity:.25;cursor:default;background:none}.gallery-controls>span{font:10px monospace;color:#add0e2;white-space:nowrap}.gallery-progress{height:2px;position:absolute;bottom:43px;left:var(--pad);right:var(--pad);background:#5387a32e}.gallery-progress span{display:block;height:100%;width:12.5%;background-image:var(--brand-gradient);transform-origin:left}.gallery-hint{position:absolute;bottom:14px;left:var(--pad);margin:0;color:#7a9caf;font:9px var(--body);letter-spacing:1px}.work-index{margin:0 var(--pad);padding:25px 0;border-top:1px solid #507c9655}.work-index summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:14px;list-style:none}.work-index summary::-webkit-details-marker{display:none}.work-index summary small{font:9px monospace;letter-spacing:1px;color:#73a3bf;margin-left:20px}.index-toggle{font-size:22px;transition:transform .2s}.work-index[open] .index-toggle{transform:rotate(45deg)}.work-filter{margin-top:25px;border-color:#507c9655}.work-filter button{color:#9bb7ca}.work-filter button.active{color:#2cddc5;border-color:#2cddc5}.work .project-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.work .project-card{position:relative;padding:20px 0 20px 95px;border-top:1px solid #507c9633;min-height:105px}.work .project-card .thumb{position:absolute;left:0;top:20px;width:76px;height:66px;border-radius:3px}.work .project-card .thumb>span{display:none}.work .project-card h3{color:#e3eff6;font-size:16px;margin:0 0 9px}.work .project-card p{color:#8faebe;font-size:10px}.work .reference-link{margin:0 var(--pad);padding:25px 0 45px;border:0;color:#b6d0e1}.work .reference-link:hover{color:#2cddc5}dialog{border-color:#347694;max-width:1180px;width:92vw;background:#0a2030}dialog::backdrop{background:#030c16e6}.dialog-top{background:#0a2030f7}.dialog-copy .eyebrow{color:#66c5dd}.dialog-top button:hover{color:#2cddc5}.dialog-copy h2{font-size:clamp(26px,4vw,44px)}.dialog-bottom a{color:#7ddce8}
body.reduced .experience-portal{transform:none}body.reduced .experience-ring,body.reduced .orbit-node{transform:none}body.reduced .work-journey{height:auto}body.reduced .work-sticky{position:relative;min-height:750px}body.reduced .orbit-card{will-change:auto}
@media(min-height:900px){.gallery-space{top:270px;bottom:190px}.orbit-card{max-height:490px}.work-heading{margin-top:45px}.work-sticky{padding-top:125px}}
@media(max-width:1000px){.brand img{width:170px}.experience-orbit{width:95%}.experience-meta{font-size:11px;gap:10px}.work-heading>p{font-size:10px}.gallery-space{top:220px;bottom:180px}.gallery-caption h3{font-size:25px}.orbit-card{width:50vw}.gallery-caption>div>p:last-child{font-size:11px}}
@media(max-width:700px){.brand img{width:145px}.nav-contact{padding:9px 12px}.hero-topline{font-size:9px;letter-spacing:1.8px}.story-visual{height:310px;padding:18px 0 0}.story-visual .visual-label{font-size:7px;align-self:center;margin-bottom:10px}.experience-orbit{width:230px;flex-shrink:0}.experience-ring.ring-two{inset:-7%}.orbit-word{font-size:6px;left:-13%;letter-spacing:1px}.orbit-node{width:6px;height:6px;transform-origin:3px 125px}.portal-zoom{height:32px;width:32px;font-size:19px;right:18%;bottom:8%}.experience-meta{font-size:10px;margin-top:12px}.experience-open{font-size:9px;padding:4px}.story-visual .visual-caption{font-size:8px;margin-top:5px}.story-sticky{min-height:750px}.work-journey{height:540vh}.work-sticky{padding-top:96px;min-height:640px}.work h2{font-size:10vw;white-space:normal}.work-heading{display:block;margin:25px 0 0}.work-heading>p{font-size:10px;margin-top:12px;line-height:1.5}.work-heading>p br{display:none}.gallery-space{top:225px;bottom:185px;perspective:800px}.orbit-card{width:76vw;max-height:350px;min-width:0;border-radius:6px}.orbit-card .orbit-card-label{font-size:7px;bottom:12px;left:12px;right:12px;letter-spacing:.7px}.orbit-card-label b{width:27px;height:27px;font-size:17px}.gallery-axis{font-size:60px;letter-spacing:-4px}.gallery-caption{bottom:65px;gap:15px;align-items:center}.gallery-caption h3{font-size:20px;letter-spacing:-.5px;margin-bottom:6px;max-width:65vw}.gallery-caption .eyebrow{font-size:7px;margin-bottom:7px}.gallery-caption>div>p:last-child{font-size:10px;max-width:65vw}.gallery-controls{gap:7px;flex-wrap:wrap;justify-content:center;width:74px;flex-shrink:0}.gallery-controls button{width:30px;height:30px;font-size:15px}.gallery-controls>span{order:3;font-size:8px;flex-basis:100%;text-align:center}.gallery-hint{font-size:8px}.gallery-progress{bottom:40px}.work-index summary{font-size:12px}.work-index summary small{font-size:7px;margin-left:12px}.work .project-grid{grid-template-columns:1fr}.work .project-card{min-height:95px;padding-left:88px}.work .project-card h3{font-size:15px;min-height:0}.work .project-card p{font-size:9px}.work .project-card .thumb{height:58px;width:70px}.work .reference-link{font-size:11px;padding-bottom:30px}.contact h2{font-size:14.3vw}footer .brand{flex-basis:60%}footer .brand img{width:150px}body.reduced .story-visual{min-height:310px}body.reduced .work-sticky{min-height:680px}.dialog-copy{padding:24px}.dialog-copy .tags span{font-size:9px}}
@media(max-width:700px) and (max-height:740px){.story-sticky{min-height:640px;padding-top:90px}.story-visual{height:270px;padding-top:12px}.experience-orbit{width:190px}.experience-meta{margin-top:9px}.story-visual .visual-caption{font-size:7px}.orbit-node{transform-origin:3px 104px}.story-copy h2{font-size:29px}.gallery-space{top:210px;bottom:185px}.work-heading{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.orbit-card{will-change:auto}}
/* Keep the scene's zero-depth plane from intercepting recessed cards. */
.gallery-space,.orbit-gallery{pointer-events:none}.orbit-card{pointer-events:auto}
/* Sticky scenes already reserve space for the fixed navigation. */
#solutions,#work{scroll-margin-top:-90px}
@media(min-width:1001px) and (max-height:899px){.gallery-space{top:260px}}
@media(max-width:700px){.gallery-space{top:230px}}
