:root{--bg:#0b0d0f;--surface:#151b20;--surface2:#1b2228;--text:#f4f6f2;--muted:#aab4bb;--line:#303a42;--cyan:#c7ff3d;--violet:#9ddab4;--ease:cubic-bezier(.22,.75,.2,1);color-scheme:dark;font-family:Inter,'Segoe UI',Arial,sans-serif;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--bg);color:var(--text);overflow-x:clip}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,summary,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}button{color:inherit}img{display:block;max-width:100%}p{color:var(--muted);font-size:1.0625rem;line-height:1.8;margin:0 0 24px}h1,h2,h3{font-weight:500;margin:0;line-height:1.12}h1{font-size:clamp(3rem,5.8vw,6rem);letter-spacing:-.055em}h2{font-size:clamp(2.3rem,4vw,4rem);letter-spacing:-.045em}h3{font-size:1.5rem;letter-spacing:-.025em}em{font-style:normal;color:var(--cyan);background:linear-gradient(105deg,#c7ff3d 5%,#d8ffa1 40%,#a4e0bd 70%,#c7ff3d 100%);background-size:200% auto;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:gradientFlow 12s ease-in-out infinite}ul{list-style:none;padding:0;margin:0}address{font-style:normal;color:var(--muted);line-height:1.8}.icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}.section{padding:100px max(5%,calc((100vw - 1440px)/2));position:relative}.eyebrow{font-size:.8125rem;color:var(--cyan);letter-spacing:.16em;line-height:1.6;font-weight:600;margin:0 0 24px;text-transform:uppercase}.lead{font-size:1.1875rem;max-width:590px;line-height:1.8}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:48px}.section-head>p{max-width:430px;margin:0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:16px 26px;background:linear-gradient(115deg,#dcff8c,#c7ff3d);color:#101510;border:1px solid transparent;border-radius:5px;font-weight:600;font-size:.9375rem;line-height:1.4;box-shadow:0 5px 25px #46b6ff15;transition:transform .35s var(--ease),box-shadow .35s,background .35s;position:relative;overflow:hidden}.button:after{content:'';position:absolute;inset:-50% -100%;background:linear-gradient(100deg,transparent 42%,#fff7 50%,transparent 58%);transform:translateX(-60%);transition:transform .6s}.button:hover:after{transform:translateX(60%)}.button:hover{box-shadow:0 6px 30px #46b6ff40}.button.secondary{background:#0b172899;color:var(--text);border-color:#4b6581;box-shadow:none}.actions{display:flex;gap:15px;flex-wrap:wrap;margin:30px 0}.section-link{margin-top:35px}.skip{position:absolute;top:-100px;left:20px;padding:15px;background:var(--cyan);color:#000;z-index:100}.skip:focus{top:10px}.scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--cyan),var(--violet));z-index:100;width:100%;transform:scaleX(0);transform-origin:left}.topbar{height:34px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:#12171c;font-size:.75rem;letter-spacing:.12em}.motion-toggle{font-size:.75rem;letter-spacing:.04em;border:0;background:none;padding:5px;color:#c9d7eb}header{height:112px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:40;background:#0b0d0ff2;border-bottom:1px solid #303a4299;backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;width:284px;flex-shrink:0}.brand-logo{width:280px;height:91px;object-fit:contain;filter:invert(1)}header>nav{display:flex;align-items:center;gap:29px;font-size:.9375rem}nav>a{white-space:nowrap}nav>a:not(.nav-cta):hover{color:var(--cyan)}nav>button{background:none;border:0;padding:8px}.nav-cta{border:1px solid #64bcdf;padding:13px 20px;border-radius:4px;transition:background .3s}.nav-cta:hover{background:#1c3553}.nav-group summary{list-style:none;display:flex;align-items:center;gap:7px;cursor:pointer;padding:24px 0;white-space:nowrap}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary .icon{width:14px;height:14px;transition:transform .25s}.nav-group[open] summary{color:var(--cyan)}.nav-group[open] summary .icon{transform:rotate(180deg)}.mega{position:absolute;left:0;right:0;top:111px;padding:36px 7%;background:#151b20;border-bottom:1px solid #5785ab;box-shadow:0 30px 50px #0008;display:flex;gap:65px;max-height:calc(100dvh - 115px);overflow:auto;animation:menuIn .25s var(--ease)}.mega>div{flex:1;min-width:180px;max-width:420px}.mega>div>span{display:block;color:var(--cyan);font-size:.8125rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:15px}.mega a{display:block;color:#becfe2;font-size:.9375rem;line-height:1.45;padding:8px 0}.mega a:hover{color:white}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:10px;border-radius:4px}.home-hero{position:relative;min-height:700px;height:calc(100svh - 146px);max-height:940px;display:flex;align-items:center;padding:60px 5%;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 72% 55%,#16325355,transparent 70%)}.hero-copy{width:49%;position:relative;z-index:4}.hero-copy h1{font-size:clamp(4rem,6.4vw,7rem);line-height:1.02;margin:20px 0 27px}.hero-copy .lead{max-width:490px}.hero-scene{position:absolute;right:-2%;top:0;width:65%;height:100%;z-index:1}.technical-visual{position:relative;overflow:hidden;background:#061120;border:1px solid #29435b;border-radius:8px;transition:transform .7s var(--ease);isolation:isolate}.technical-visual>img{height:100%;width:100%;object-fit:cover;animation:modelFloat 16s ease-in-out infinite}.hero-model{height:100%;width:100%;border:0;border-radius:0;background:none;mask-image:linear-gradient(90deg,transparent,#000 17%)}.hero-model>img{object-fit:cover;width:100%;height:100%;object-position:48% center;animation:heroDrift 18s ease-in-out infinite}.hero-model:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b0d0fbb,transparent 35%),linear-gradient(0deg,#0b0d0f 0%,transparent 25%);pointer-events:none}.visual-sweep{position:absolute;inset:0;pointer-events:none;overflow:hidden}.visual-sweep:after{content:'';position:absolute;left:0;right:0;top:-10%;height:2px;background:linear-gradient(90deg,transparent,#85e5ff88,transparent);box-shadow:0 -20px 40px #68dcff22;animation:scanSweep 10s ease-in-out infinite}.visual-caption{position:absolute;right:18px;bottom:16px;font-size:.75rem;letter-spacing:.07em;color:#acbfd5;background:#061120aa;padding:7px 10px;z-index:3}.hero-model .visual-caption{bottom:24px;right:11%}.scene-label{position:absolute;right:12%;top:10%;z-index:3;border-left:1px solid #c7ff3d80;padding-left:18px;animation:labelFloat 8s ease-in-out infinite}.scene-label>span{font-size:.75rem;letter-spacing:.15em;color:var(--cyan)}.scene-label strong{font-size:1rem;font-weight:400;line-height:1.6;display:block;margin-top:8px}.hero-pills{display:flex;gap:20px;color:#aec3da;font-size:.875rem;margin-top:38px}.hero-pills>span{border-bottom:1px solid #45617d;padding-bottom:8px}.trust-bar{display:grid;grid-template-columns:repeat(3,1fr) 1.35fr;padding:36px 5%;gap:35px;border-block:1px solid var(--line);background:#111619}.trust-bar>div{display:flex;align-items:center;gap:20px;border-right:1px solid var(--line)}.trust-bar strong{font-size:2.75rem;font-weight:400;color:#c7ff3d;letter-spacing:-.05em}.trust-bar span{font-size:.875rem;line-height:1.7;color:#a9bbd0}.trust-bar>p{font-size:.875rem;line-height:1.6;margin:0}.trust-bar b{font-weight:500;color:var(--text)}.software-band{padding:35px 5%;background:#e8eff8;color:#12171c}.software-band .eyebrow{color:#42617a;margin-bottom:20px;font-size:.75rem}.software-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.software-grid.compact{display:flex;justify-content:space-between;gap:25px}.software-item{background:#151c22;border:1px solid var(--line);padding:25px;display:flex;gap:20px;align-items:flex-start;border-radius:5px}.software-logo{flex-shrink:0;background:#fff;width:76px;height:76px;padding:12px;border-radius:4px;display:flex;align-items:center;justify-content:center}.software-logo img{max-height:100%;object-fit:contain}.software-item h3{font-size:1rem;line-height:1.35;margin:3px 0 9px}.software-item p{font-size:.9375rem;line-height:1.65;margin:0}.compact .software-item{padding:0;background:none;border:0;align-items:center;gap:14px;max-width:245px}.compact .software-logo{width:48px;height:48px;background:none;padding:0}.compact h3{font-size:.875rem;max-width:130px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{padding:34px 30px;min-height:380px;border:1px solid #2c405a;background:linear-gradient(145deg,#1a2429,#111619);border-radius:7px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:background .4s,border-color .4s,transform .4s var(--ease)}.service-card:before{content:'';height:2px;width:80px;background:linear-gradient(90deg,var(--cyan),var(--violet));position:absolute;top:0;left:30px;transition:width .4s}.service-card:hover{border-color:#639bbd;transform:translateY(-5px);background:linear-gradient(145deg,#183453,#151b20)}.service-card:hover:before{width:calc(100% - 60px)}.card-category{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#8ab9d9;line-height:1.5;display:block;margin-bottom:25px}.service-card h3{font-size:1.8rem;margin-bottom:18px}.service-card p{font-size:1rem;line-height:1.7;margin-bottom:25px}.card-action{display:inline-block;font-size:.875rem;font-weight:500;color:var(--cyan);padding-top:12px;margin-top:auto;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#46728d}.workflow-feature{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;background:#151c21;align-items:center;border-block:1px solid var(--line)}.workflow-feature h2{margin-bottom:28px}.workflow-feature>div>p{max-width:590px}.workflow-tabs{display:flex;gap:0;border-bottom:1px solid #3e5069;margin:40px 0 25px}.workflow-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:15px 18px;color:#8ba3bc;font-size:.875rem;flex:1;text-align:left;white-space:nowrap}.workflow-tabs button[aria-selected=true]{color:var(--cyan);border-color:var(--cyan);background:#6ad3ff09}#workflow-panel{min-height:150px}#workflow-panel h3{font-size:1.25rem;line-height:1.4;margin-bottom:10px}#workflow-panel p{font-size:1rem}.workflow-art{position:relative;min-height:510px;border:1px solid #3d5979;border-radius:10px;overflow:hidden;background:#071120}.stage-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity .9s var(--ease),transform 5s ease}.stage-image.active{opacity:1;transform:scale(1)}.stage-image.sheet{object-fit:contain;background:white;padding:15px}.workflow-caption{position:absolute;bottom:0;left:0;right:0;padding:15px;background:#061120d9;color:#a8bbd2;font-size:.75rem;letter-spacing:.05em}.case-section{background:radial-gradient(ellipse at 100% 20%,#25285e30,transparent 55%)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.project-card{min-width:0;border:1px solid #253b57;border-radius:8px;overflow:hidden;background:#151b20;transition:border-color .4s}.project-card:hover{border-color:#689abe}.project-card[hidden]{display:none!important}.project-image{aspect-ratio:16/9;position:relative;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.project-card:hover .project-image img{transform:scale(1.05)}.project-image>span{position:absolute;bottom:12px;right:12px;font-size:.75rem;color:#b4c5d9;background:#061120b0;padding:6px 9px}.project-card-body{padding:28px 30px 30px}.project-card .card-category{margin-bottom:12px}.project-card h3{font-size:1.9rem;margin-bottom:14px}.project-card p{font-size:1rem}.audience-list{border-top:1px solid var(--line)}.audience-list>a{display:grid;grid-template-columns:60px 1fr 1fr;gap:35px;padding:30px 15px;border-bottom:1px solid var(--line);align-items:center;transition:background .4s,padding .4s}.audience-list>a:hover{background:#122743;padding-left:30px}.audience-list span{font-size:.8125rem;color:var(--cyan)}.audience-list h3{font-size:1.65rem}.audience-list p{margin:0;font-size:1rem}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.portrait{aspect-ratio:4/5;background:#14243c;overflow:hidden;border-radius:6px;border:1px solid #2b4059}.portrait img{height:100%;width:100%;object-fit:cover;object-position:center top;filter:saturate(.7);transition:transform .8s,filter .8s}.team-grid>a:hover .portrait img{transform:scale(1.04);filter:saturate(1)}.team-grid h3{font-size:1.4rem;margin:23px 0 8px}.team-grid p{font-size:.875rem;line-height:1.5;margin-bottom:4px}.team-grid .card-action{font-size:.8125rem}.cta{margin:25px 5% 65px;padding:65px;max-width:none;background:radial-gradient(ellipse at 95% 0%,#303c8655,transparent 60%),linear-gradient(120deg,#102a45,#0c1730);border:1px solid #4a6e98;border-radius:10px;overflow:hidden}.cta:before{content:'';position:absolute;right:-10%;top:-60%;width:60%;height:200%;background:linear-gradient(100deg,transparent,#92c8ff09,transparent);transform:rotate(20deg);animation:ctaGlow 14s linear infinite;pointer-events:none}.cta h2{font-size:clamp(2.8rem,4.5vw,4.7rem);position:relative}.cta>div{display:flex;align-items:center;justify-content:space-between;gap:50px;margin-top:30px;position:relative}.cta p{max-width:580px;margin:0}.cta .button{flex-shrink:0}footer{padding:60px 5% 25px;background:#080a0c;border-top:1px solid #303a42}.footer-grid{display:grid;grid-template-columns:1.35fr .8fr .8fr 1.3fr;gap:40px}.footer-grid .brand-logo{width:280px;max-width:100%;height:90px;object-position:left}.footer-grid p{font-size:1rem;margin-top:20px}.footer-grid h3{font-size:.9375rem;margin:18px 0 22px;color:#d5e3f3}.footer-grid>div>a:not(:first-child){display:block;font-size:.9375rem;color:#98aec7;padding:7px 0;overflow-wrap:anywhere}.footer-grid>div>a:hover{color:white}.footer-grid address{font-size:.9375rem;margin-bottom:15px}.socials{display:flex;gap:18px}.social-link{display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:#aec8e2}.social-link>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.social-link:hover{color:var(--cyan)}.footer-bottom{border-top:1px solid #1c2b40;margin-top:55px;padding-top:22px;display:flex;justify-content:space-between;color:#8096b0;gap:25px;font-size:.8125rem}.page-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center;padding-top:50px;padding-bottom:65px;background:radial-gradient(ellipse at 80% 20%,#25447b22,transparent 65%);min-height:560px}.breadcrumb{font-size:.8125rem;color:#92a9c4;display:flex;gap:15px;margin-bottom:45px}.breadcrumb a:hover{color:white}.page-hero h1{font-size:clamp(3rem,5vw,5rem);margin:0 0 28px;line-height:1.08}.page-hero .lead{margin:0}.page-hero .technical-visual{height:430px}.page-hero .technical-visual>img{object-position:center}.subnav{display:flex;gap:35px;padding:22px 5%;background:#151b20;border-block:1px solid var(--line);font-size:.875rem;flex-wrap:wrap}.subnav a:hover{color:var(--cyan)}.detail-split{display:grid;grid-template-columns:1fr 1fr;gap:90px}.detail-split h2{margin-bottom:30px}.detail-split>div>p{max-width:480px}.number-list{border-top:1px solid #344b68}.number-list article{display:flex;gap:28px;padding:30px 0;border-bottom:1px solid #344b68;align-items:flex-start}.number-list span{font-size:.8125rem;color:var(--cyan);padding-top:5px}.number-list p{font-size:1.1875rem;color:#cad7e8;line-height:1.65;margin:0}.deliverables{display:grid;grid-template-columns:1fr 1fr;gap:90px;background:#1a2228;border-block:1px solid #2b4360}.deliverables h2{font-size:2.6rem;margin-bottom:28px}.deliverables li{display:flex;align-items:flex-start;gap:16px;padding:15px 0;border-bottom:1px solid #344961;font-size:1.125rem;line-height:1.6}.deliverables li .icon{color:var(--cyan);margin-top:3px}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px}.gallery-item{padding:15px 15px 0;border:1px solid #4b627e;border-radius:5px;background:#fff;position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;min-height:240px}.gallery-item img{width:100%;height:auto;max-height:500px;object-fit:contain;margin:auto}.gallery-item>span{display:flex;align-items:center;justify-content:center;gap:8px;background:#0a192c;color:#d8eaff;margin:15px -15px 0;padding:13px;font-size:.875rem}.gallery-item:hover>span{background:#1c3655}.project-gallery>.gallery-item:only-child{grid-column:1/-1;max-width:1000px;width:100%;margin:auto}.sample-note{font-size:.8125rem;color:#849cb7;margin:25px 0 0;line-height:1.6}.next-step{background:linear-gradient(115deg,#0a1d33,#111e3a);border-block:1px solid #284762}.next-step h2{margin-bottom:25px}.next-step p{max-width:880px;font-size:1.1875rem}.faq{max-width:1250px;margin:auto}.faq details{border-bottom:1px solid var(--line)}.faq summary{font-size:1.1875rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:25px 0;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq details p{padding-bottom:15px;max-width:850px}.faq details[open] summary{color:var(--cyan)}.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.sector-card{padding:35px;background:linear-gradient(140deg,#1c282c,#151b20);border:1px solid #304863;border-radius:6px;min-height:290px;display:flex;flex-direction:column;transition:border-color .3s,transform .3s}.sector-card:hover{border-color:#71abc9;transform:translateY(-3px)}.sector-card h3{font-size:1.8rem;line-height:1.3;margin:10px 0 20px}.sector-card p{font-size:1rem}.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.focus-grid article{border-top:1px solid #416482;padding-top:25px}.focus-grid span{font-size:.8125rem;color:var(--cyan)}.focus-grid h3{font-size:1.85rem;line-height:1.3;margin:25px 0}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.filters button{border:1px solid #3c5370;background:none;padding:12px 22px;border-radius:4px;font-size:.9375rem;color:#b7cce3}.filters button.active{background:#c7ff3d;color:#11190d;border-color:#c7ff3d}.filter-status{font-size:.8125rem}.project-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;background:#151c21;border-block:1px solid #2a425e;padding:32px 5%}.project-facts span{display:block;font-size:.75rem;color:#a8beab;text-transform:uppercase;letter-spacing:.09em;margin-bottom:12px}.project-facts strong{font-size:1rem;font-weight:500;line-height:1.6}.large-copy{font-size:1.35rem;color:#bacfe6;line-height:1.75}.project-fit{display:grid;grid-template-columns:1fr 1fr;gap:75px;background:linear-gradient(110deg,#132d48,#15213e);border-block:1px solid #385d80}.project-fit h2{margin-bottom:25px}.project-fit h3{font-size:1.6rem;margin:25px 0}.project-fit p{font-size:1.125rem}.profile{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:center}.profile .portrait{max-width:460px}.profile h1{margin-bottom:30px}.profile-email{font-size:1rem;display:flex;align-items:center;gap:12px;color:var(--cyan);margin-top:32px;overflow-wrap:anywhere}.tags{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.tags span{font-size:.8125rem;padding:9px 14px;border:1px solid #415c7a;border-radius:3px;color:#c1d6eb}.prose p{font-size:1.1875rem;line-height:1.8}.process-timeline article{display:grid;grid-template-columns:90px .8fr 1.2fr;gap:50px;align-items:start;border-top:1px solid #3c5470;padding:45px 0}.process-timeline article:last-child{border-bottom:1px solid #3c5470}.process-timeline article>span{font-size:2.4rem;color:var(--cyan);font-weight:300}.process-timeline h2{font-size:3rem}.process-timeline p{margin:0}.article-body{max-width:1100px;margin:auto}.article-body section{margin-bottom:45px}.article-body h2{font-size:2rem;margin-bottom:20px}.article-body p{font-size:1.1875rem}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;background:#151b20;border-top:1px solid #2a415d}.contact h2{font-size:2.7rem;margin-bottom:15px}.contact address{font-size:1.1875rem;margin:25px 0}.contact-email{display:flex;align-items:center;gap:12px;color:var(--cyan);margin:15px 0;overflow-wrap:anywhere}.contact-phone{display:inline-block;color:#dcecff;font-size:1.125rem;margin:5px 0}.contact>div>p:last-child{max-width:470px;font-size:1rem}form{background:#1c252b;padding:35px;border:1px solid #344f6e;border-radius:7px}label{display:block;font-size:.875rem;color:#ccdbee;margin-bottom:23px;line-height:1.5}input,select,textarea{display:block;width:100%;padding:14px;border:1px solid #405974;border-radius:4px;background:#10181d;color:#eaf4ff;margin-top:9px;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #86deff;outline-offset:2px}textarea{resize:vertical}::placeholder{color:#7f99b6;opacity:1}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-note{font-size:.8125rem;margin:18px 0 0;line-height:1.6}.sitemap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.sitemap-grid h2{font-size:1.75rem;margin-bottom:20px}.sitemap-grid a{display:block;color:#b4c8de;line-height:1.6;padding:6px 0;font-size:.9375rem}.sitemap-grid a:hover{color:var(--cyan)}dialog{background:#141c21;color:var(--text);border:1px solid #6085ae;border-radius:9px;width:min(90%,800px);padding:35px;max-height:85dvh;box-shadow:0 30px 100px #000b}dialog::backdrop{background:#020812cf;backdrop-filter:blur(7px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.dialog-head h2{font-size:2rem}.dialog-head button,dialog>button,.gallery-controls button{border:1px solid #3b5675;background:#102b49;padding:9px;border-radius:4px}#site-search{font-size:1.125rem}#search-count{font-size:.875rem;margin-top:20px}#search-results a{display:block;padding:20px 0;border-top:1px solid #304862}#search-results span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--cyan);margin-bottom:8px}#search-results strong{font-size:1.125rem;font-weight:500}#search-results p{font-size:.875rem;line-height:1.6;margin:10px 0 0}#gallery-dialog{width:95%;max-width:1700px;padding:20px}#gallery-dialog>button{display:block;margin:0 0 15px auto}#gallery-image{max-height:70dvh;max-width:100%;width:auto;margin:auto;background:#fff}#gallery-caption{font-size:.875rem;margin:15px 0;text-align:center}.gallery-controls{display:flex;gap:25px;align-items:center;justify-content:center;font-size:.875rem}.animated-title{animation:titleIn 1.2s var(--ease) both}.js-motion [data-reveal].waiting{opacity:0;transform:translateY(30px)}[data-reveal]{transition:opacity .9s var(--ease),transform .9s var(--ease)}[data-reveal].visible{opacity:1;transform:none}.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important;transition-duration:0s!important}.motion-paused [data-reveal]{opacity:1!important;transform:none!important}.motion-paused .animated-title{opacity:1;transform:none}.motion-paused em{-webkit-text-fill-color:#c7ff3d;background:none}.motion-paused{scroll-behavior:auto}@keyframes heroDrift{0%,100%{transform:scale(1.02) translateY(0)}50%{transform:scale(1.08) translateY(-8px)}}@keyframes modelFloat{0%,100%{transform:scale(1.01)}50%{transform:scale(1.06)}}@keyframes labelFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes scanSweep{0%,15%{top:-10%;opacity:0}20%{opacity:.8}70%{opacity:.8}85%,100%{top:110%;opacity:0}}@keyframes gradientFlow{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes titleIn{from{opacity:0;transform:translateY(20px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes menuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes ctaGlow{0%,100%{transform:translateX(-30%) rotate(20deg)}50%{transform:translateX(40%) rotate(20deg)}}@view-transition{navigation:auto}::view-transition-old(root){animation:pageOut .2s ease both}::view-transition-new(root){animation:pageIn .45s var(--ease) both}@keyframes pageOut{to{opacity:0}}@keyframes pageIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(min-width:1700px){header,.topbar,.trust-bar,.project-facts,.software-band,footer{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}.hero-copy{margin-left:calc((100vw - 1600px)/2)}.hero-scene{width:63%}.home-hero{max-height:980px}.home-hero h1{font-size:7.5rem}.cta{max-width:1440px;margin-left:auto;margin-right:auto}}
@media(max-width:1200px){header{height:98px}.brand{width:230px}.brand-logo{width:230px;height:82px}header>nav{gap:18px;font-size:.875rem}.nav-cta{padding:12px}.mega{top:97px;gap:35px}.home-hero{min-height:650px;height:auto}.hero-copy h1{font-size:5.4rem}.hero-copy .lead{font-size:1.0625rem;max-width:440px}.hero-scene{width:64%;right:-6%}.scene-label{display:none}.trust-bar{gap:25px}.trust-bar>div{gap:13px}.trust-bar strong{font-size:2.4rem}.trust-bar span{font-size:.8125rem}.section{padding-top:80px;padding-bottom:80px}.service-card{padding:28px 25px}.service-card h3{font-size:1.65rem}.workflow-feature{gap:35px}.workflow-art{min-height:430px}.workflow-tabs button{padding:15px 8px;font-size:.8125rem}.page-hero{gap:35px;min-height:520px}.page-hero .technical-visual{height:390px}.page-hero h1{font-size:3.9rem}.detail-split,.deliverables,.project-fit{gap:55px}.software-grid{grid-template-columns:1fr 1fr}.compact .software-logo{width:40px;height:40px}.compact .software-item{gap:10px}.compact h3{font-size:.8125rem}.software-grid.compact{gap:18px}.profile{gap:50px}.contact{gap:40px}.footer-grid{gap:28px;grid-template-columns:1fr .7fr .7fr 1.25fr}.footer-grid .brand-logo{height:80px}.footer-grid>div>a:not(:first-child),.footer-grid address{font-size:.875rem}.sector-card{padding:28px}.sector-card h3{font-size:1.6rem}.cta{padding:50px}.cta>div{gap:30px}}
@media(max-width:1200px){.menu-toggle{display:block}header{height:96px}.brand{width:250px}.brand-logo{width:250px;height:86px}header>nav{display:none;position:absolute;left:0;right:0;top:95px;padding:15px 5% 30px;background:#081526;border-bottom:1px solid #456581;max-height:calc(100dvh - 96px);overflow:auto}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav>a,nav>button{padding:18px 0;font-size:1rem;text-align:left}.nav-cta{text-align:center!important;margin-top:18px}.nav-group summary{padding:17px 0;justify-content:space-between;font-size:1rem}.mega{position:static;display:flex;flex-wrap:wrap;padding:15px 20px;box-shadow:none;border:1px solid #2a435e;gap:30px;animation:none;max-height:none}.mega>div{min-width:180px}}
@media(max-width:1000px){.home-hero{min-height:640px}.hero-copy{width:57%}.hero-copy h1{font-size:4.7rem}.hero-scene{width:67%;right:-13%}.hero-model{mask-image:linear-gradient(90deg,transparent,#000 30%)}.hero-pills{gap:16px}.trust-bar{grid-template-columns:repeat(3,1fr)}.trust-bar>p{display:none}.trust-bar>div:last-of-type{border:0}.service-grid{grid-template-columns:1fr 1fr}.section-head{align-items:flex-start;flex-direction:column;gap:22px}.section-head>p{max-width:650px}.team-grid{grid-template-columns:repeat(2,1fr);gap:40px 25px}.team-grid .portrait{max-height:450px}.software-grid.compact{flex-wrap:wrap;justify-content:flex-start;gap:20px 40px}.compact .software-item{min-width:180px}.compact h3{font-size:.875rem}.workflow-feature{grid-template-columns:1fr}.workflow-art{min-height:450px;max-height:570px;aspect-ratio:3/2}.workflow-feature>div>p{max-width:700px}#workflow-panel{min-height:130px}.workflow-tabs{max-width:620px}.workflow-tabs button{font-size:.9375rem}.workflow-feature .button{margin-top:0}.workflow-art .stage-image{object-fit:contain}.page-hero{grid-template-columns:1.1fr 1fr;gap:25px}.page-hero h1{font-size:3.4rem}.page-hero .technical-visual{height:340px}.page-hero .lead{font-size:1.0625rem}.page-hero .visual-caption{font-size:.75rem;max-width:90%;right:10px}.breadcrumb{margin-bottom:30px}.sector-grid{grid-template-columns:1fr 1fr}.focus-grid{gap:30px}.focus-grid h3{font-size:1.5rem}.profile h1{font-size:3.5rem}.profile .lead{font-size:1.0625rem}.contact{grid-template-columns:1fr}.contact>div{max-width:650px}.contact form{max-width:800px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1;display:block}.footer-grid address{margin-bottom:10px}.footer-grid>div:last-child>a{display:inline-block!important;margin-right:30px}.cta>div{align-items:flex-start;flex-direction:column;gap:25px}.sitemap-grid{gap:40px 30px}.sitemap-grid h2{font-size:1.5rem}}
@media(max-width:700px){html{scroll-padding-top:90px}h1{font-size:3rem}h2{font-size:2.6rem;letter-spacing:-.045em}p{font-size:1rem}.section{padding:60px 6%}.eyebrow{font-size:.75rem;letter-spacing:.12em;margin-bottom:18px}.topbar{padding:0 6%;height:32px;font-size:.625rem;letter-spacing:.08em}.motion-toggle{font-size:.75rem;letter-spacing:0}header{height:88px;padding:0 6%}.brand{width:238px}.brand-logo{width:238px;height:78px}.menu-toggle{padding:8px}.menu-toggle .icon{width:23px;height:23px}header>nav{top:87px;max-height:calc(100dvh - 88px);padding:10px 6% 25px}.mega{padding:20px;display:block}.mega>div{margin-bottom:25px;max-width:none}.mega>div:last-child{margin-bottom:0}.home-hero{padding:45px 6% 0;display:flex;flex-direction:column;align-items:stretch;min-height:0;max-height:none;height:auto;background:#0b0d0f}.hero-copy{width:100%}.hero-copy h1{font-size:clamp(3.8rem,12vw,5.7rem);line-height:1.04;letter-spacing:-.05em;margin:20px 0 22px}.hero-copy .lead{font-size:1.0625rem;max-width:560px}.hero-scene{position:relative;right:auto;top:auto;width:calc(100% + 14%);margin-left:-7%;height:auto;aspect-ratio:3/2;margin-top:5px}.hero-model{mask-image:linear-gradient(0deg,#000 80%,transparent)}.hero-model>img{object-fit:contain;object-position:center}.hero-model:after{background:linear-gradient(0deg,#0b0d0f,transparent 20%)}.hero-model .visual-caption{bottom:15px;right:7%;font-size:.625rem}.hero-pills{margin-top:25px;font-size:.8125rem;gap:20px}.actions{gap:12px;margin:24px 0}.button{font-size:.875rem;padding:15px 20px;min-height:52px}.home-hero .button{flex:1;padding:15px 10px;white-space:nowrap}.trust-bar{padding:25px 6%;gap:15px}.trust-bar>div{display:block;border-right:1px solid #303a42;padding-right:10px}.trust-bar strong{display:block;font-size:2.1rem;margin-bottom:9px}.trust-bar span{display:block;font-size:.75rem;line-height:1.55}.software-band{padding:28px 6%}.software-grid.compact{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px}.compact .software-item{min-width:0;gap:12px}.compact .software-logo{width:38px;height:38px}.compact h3{font-size:.8125rem;max-width:130px}.service-grid{grid-template-columns:1fr;gap:18px}.service-card{min-height:0;padding:28px}.service-card .card-category{margin-bottom:25px}.service-card h3{font-size:1.75rem}.service-card p{font-size:1rem;line-height:1.7}.service-card .card-action{padding-top:6px}.section-head{margin-bottom:32px;gap:20px}.section-head p{font-size:1rem}.workflow-feature{gap:35px}.workflow-feature h2{margin-bottom:24px}.workflow-tabs{margin-top:28px}.workflow-tabs button{padding:14px 5px;font-size:.8125rem}#workflow-panel{min-height:155px}.workflow-art{min-height:280px;aspect-ratio:1.2}.workflow-caption{font-size:.75rem;padding:12px}.project-grid{grid-template-columns:1fr;gap:25px}.project-card-body{padding:25px}.project-card h3{font-size:1.75rem}.project-image{aspect-ratio:16/10}.audience-list>a{grid-template-columns:28px 1fr;gap:12px;padding:24px 0}.audience-list h3{font-size:1.4rem;line-height:1.35}.audience-list p{grid-column:2;font-size:.9375rem;line-height:1.5}.audience-list>a:hover{padding-left:10px}.team-grid{gap:32px 18px}.team-grid h3{font-size:1.25rem;margin-top:18px}.team-grid p{font-size:.8125rem}.team-grid .card-action{font-size:.75rem}.cta{margin:15px 6% 45px;padding:35px 25px;border-radius:7px}.cta h2{font-size:2.55rem}.cta>div{margin-top:25px}.cta p{font-size:1rem}.cta .button{width:100%}footer{padding:35px 6% 25px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid .brand-logo{width:265px;height:90px}.footer-grid p{margin-top:12px}.footer-grid h3{margin:12px 0 16px}.footer-grid>div>a:not(:first-child){font-size:.875rem}.footer-grid>div:last-child>a{display:block!important}.footer-bottom{flex-direction:column;gap:12px;margin-top:32px;font-size:.75rem}.page-hero{display:flex;flex-direction:column;align-items:stretch;gap:35px;padding-top:30px;padding-bottom:40px;min-height:0}.page-hero h1{font-size:clamp(2.8rem,9.5vw,4rem);line-height:1.1;margin-bottom:22px}.page-hero .lead{font-size:1.0625rem}.page-hero .technical-visual{height:auto;aspect-ratio:3/2;max-height:390px}.breadcrumb{margin-bottom:28px;font-size:.75rem}.page-hero .visual-caption{font-size:.625rem;letter-spacing:.04em}.subnav{padding:18px 6%;gap:16px 25px;font-size:.8125rem}.detail-split,.deliverables,.project-fit{grid-template-columns:1fr;gap:30px}.detail-split h2{margin-bottom:20px}.number-list article{gap:22px;padding:25px 0}.number-list p{font-size:1.125rem}.deliverables h2{font-size:2.25rem;margin-bottom:20px}.deliverables li{font-size:1.0625rem}.project-gallery{grid-template-columns:1fr;gap:20px}.gallery-item{min-height:170px;padding:10px 10px 0}.gallery-item>span{margin:10px -10px 0;font-size:.8125rem}.gallery-item img{max-height:420px}.next-step p{font-size:1.0625rem}.faq summary{font-size:1.0625rem;padding:22px 0}.faq details p{font-size:1rem}.sector-grid{grid-template-columns:1fr;gap:18px}.sector-card{min-height:230px;padding:28px}.sector-card h3{font-size:1.65rem}.focus-grid{grid-template-columns:1fr;gap:30px}.focus-grid h3{font-size:1.7rem;margin:18px 0}.filters{gap:9px}.filters button{padding:10px 16px;font-size:.8125rem}.project-facts{grid-template-columns:1fr;gap:20px;padding:27px 6%}.project-facts>div{border-bottom:1px solid #2a425e;padding-bottom:20px}.project-facts>div:last-child{border:0;padding-bottom:0}.project-facts span{font-size:.6875rem;margin-bottom:8px}.project-facts strong{font-size:1rem}.large-copy{font-size:1.1875rem}.software-grid{grid-template-columns:1fr;gap:15px}.software-item{padding:22px}.software-logo{width:68px;height:68px}.software-item h3{font-size:1.0625rem}.software-item p{font-size:.9375rem}.project-fit h3{margin-top:0}.profile{grid-template-columns:1fr;gap:35px}.profile .portrait{max-width:390px;width:100%}.profile h1{font-size:3.4rem}.profile .lead{font-size:1.125rem}.profile-email{font-size:.9375rem}.prose p{font-size:1.125rem}.process-timeline article{grid-template-columns:45px 1fr;gap:18px;padding:30px 0}.process-timeline article>span{font-size:2rem}.process-timeline h2{font-size:2.4rem}.process-timeline p{grid-column:2;font-size:1rem}.article-body h2{font-size:1.8rem}.article-body p{font-size:1.0625rem}.contact{gap:32px}.contact h2{font-size:2.25rem}.contact address{font-size:1.0625rem}.contact-email{font-size:.9375rem;gap:10px}.contact-email .icon{width:18px}.contact-phone{font-size:1rem}form{padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}label{font-size:.875rem}input,select,textarea{font-size:1rem;padding:13px}form .button{width:100%}.sitemap-grid{grid-template-columns:1fr 1fr;gap:35px 25px}.sitemap-grid h2{font-size:1.35rem}.sitemap-grid a{font-size:.875rem}dialog{padding:25px;width:94%}.dialog-head h2{font-size:1.8rem}#gallery-dialog{padding:12px}#gallery-image{max-height:65dvh}#gallery-caption{font-size:.75rem}.sample-note{font-size:.75rem}}
@media(max-width:380px){.brand,.brand-logo{width:215px}.topbar>span{font-size:.5625rem}.home-hero h1{font-size:3.7rem}.home-hero .actions{flex-direction:column}.hero-pills{gap:14px}.trust-bar span{font-size:.6875rem}.team-grid{grid-template-columns:1fr}.team-grid .portrait{max-height:430px}.sitemap-grid{grid-template-columns:1fr}.workflow-tabs button{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.animated-title,[data-reveal]{opacity:1!important;transform:none!important;filter:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}

.social-icon{filter:invert(1);width:20px;height:20px;object-fit:contain}.software-acc .software-logo{width:116px;padding:10px}.compact .software-acc .software-logo{background:white;width:112px;padding:6px;height:42px}.compact .software-acc h3{max-width:110px}.compact .software-acc{max-width:270px}@media(max-width:700px){.compact .software-acc{grid-column:1/-1}.compact .software-acc .software-logo{width:125px}.compact .software-acc h3{max-width:180px}}
/* Graphite / lime: dimensional artwork, quiet surfaces, clear hierarchy. */
:root{--cyan:#c7ff3d;--violet:#a8ddc4}body{background:#0b0d0f}.button{box-shadow:0 5px 25px #b3ff1910}.button:hover{box-shadow:0 6px 30px #b3ff1928}.button.secondary{background:#15191dcc;border-color:#485148}.nav-cta{border-color:#9fb969}.nav-cta:hover{background:#26301b}.mega{border-bottom-color:#465135}.mega a{color:#c5ccc6}.home-hero{background:#0b0d0f}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.33;z-index:-2;pointer-events:none}.home-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b0d0ff2 5%,#0b0d0fba 38%,#0b0d0f26 90%),linear-gradient(0deg,#0b0d0f,transparent 40%);z-index:-1;pointer-events:none}.hero-scene{opacity:.85}.hero-model{mask-image:linear-gradient(90deg,transparent 0%,#000b 38%,#000 100%)}.hero-model>img{opacity:.83}.technical-visual{background:#111619;border-color:#364033}.technical-visual>img{filter:saturate(.85)}.visual-caption,.scene-label{background:#0d1217b5}.hero-copy h1 em{display:inline-block;border:1px solid #c7ff3d88;padding:.02em .09em .09em;margin:.08em -.09em 0;background:#c7ff3d0a;color:#c7ff3d;-webkit-text-fill-color:#c7ff3d;box-shadow:inset 0 0 25px #c7ff3d08;position:relative}.hero-copy h1 em:after{content:'';width:9px;height:9px;position:absolute;right:-5px;bottom:-5px;background:#c7ff3d}.page-hero h1 em{border-bottom:1px solid #c7ff3d66;padding-bottom:.045em}.service-card{padding:0 28px 28px;overflow:hidden;background:linear-gradient(135deg,#171c20,#111519)}.service-art{width:calc(100% + 56px);max-width:none;height:170px;object-fit:cover;margin:0 -28px 26px;opacity:.72;transition:opacity .5s,transform .8s}.service-card:hover .service-art{opacity:.95;transform:scale(1.025)}.service-card p{flex:1}.experience{display:block;color:#a8ddc4;font-size:.75rem;line-height:1.5;margin:0 0 18px}.project-facts{background:#141a1d}.project-image img{opacity:.83}.workflow-art{border-color:#364033}.cta{background:radial-gradient(ellipse at right,#35451d66,transparent 65%),#151b1c;border-color:#53633b}.footer-links{display:flex;flex-wrap:wrap;gap:16px 24px;padding-top:35px;border-top:1px solid var(--line);font-size:.8125rem}.footer-links button{background:none;border:0;padding:0;text-decoration:underline}.footer-links a:hover{color:var(--cyan)}.honey{display:none!important}.check-label{display:flex;align-items:flex-start;gap:12px;line-height:1.6;font-size:.8125rem}.check-label input{width:18px;height:18px;flex-shrink:0;margin:4px 0;accent-color:#c7ff3d}.check-label a,.form-note a,.policy a,.cookie-banner a{text-decoration:underline;text-underline-offset:3px}.cookie-banner{position:fixed;bottom:22px;left:3%;right:3%;padding:24px 28px;z-index:70;background:#171e20f7;border:1px solid #68764e;border-radius:9px;box-shadow:0 15px 60px #0008;display:flex;gap:28px;align-items:center;backdrop-filter:blur(15px)}[hidden]{display:none!important}.cookie-banner h2{font-size:1.2rem;letter-spacing:-.02em;margin-bottom:7px}.cookie-banner p{font-size:.875rem;margin:0;max-width:740px;line-height:1.6}.cookie-actions{display:flex;gap:12px;flex-shrink:0}.cookie-actions .button{font-size:.8125rem;min-height:44px;padding:12px 18px}#subscribe-dialog{max-width:620px;max-height:90dvh;overflow:auto;border:1px solid #56633d;background:radial-gradient(ellipse at top right,#34431e55,transparent 70%),#12171a}#subscribe-dialog h2{font-size:2.8rem;margin-bottom:20px}#subscribe-dialog .dialog-head button{font-size:1.6rem}#subscribe-dialog .eyebrow{font-size:.65rem;margin:0}#subscribe-dialog>p{font-size:1rem}.popup-divider{font-size:.8rem;color:var(--muted);border-top:1px solid var(--line);padding:25px 0 0;margin-top:25px}.newsletter-form{padding:25px 0 0;border:0;background:none}.newsletter-form .form-note{font-size:.75rem}.policy{max-width:1120px;margin:auto;padding-top:65px}.policy h1{margin:20px 0 30px;font-size:clamp(2.8rem,5vw,4.8rem)}.policy section{margin:45px 0}.policy h2{font-size:1.7rem;margin-bottom:18px}.policy p{max-width:850px}.sector-card .social-icon{width:35px;height:35px;margin-bottom:25px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #c7ff3d;outline-offset:3px}.motion-paused .hero-video{opacity:.22}
@media(max-width:1100px){.cookie-banner{align-items:flex-start;flex-direction:column;gap:16px}.cookie-actions{width:100%}.cookie-actions .button{flex:1}}
@media(max-width:700px){.hero-video{opacity:.28}.hero-scene{opacity:.72}.service-card{padding:0 25px 25px}.service-art{margin:0 -25px 24px;width:calc(100% + 50px);height:180px}.cookie-banner{padding:18px;bottom:12px;max-height:70dvh;overflow:auto}.cookie-banner p{font-size:.8125rem}.cookie-actions{gap:8px}.cookie-actions .button{padding:10px}.hero-copy h1 em{padding:.015em .05em .06em;margin-left:-.05em}.footer-links{gap:16px 20px}.policy h1{overflow-wrap:anywhere}#subscribe-dialog h2{font-size:2.2rem}}
/* Karyashala's project-first editorial identity. */
.mission-hero{min-height:760px;align-items:flex-start;padding-top:90px}.mission-hero .hero-copy{width:70%;max-width:1000px}.mission-hero .hero-copy h1{font-size:clamp(3.6rem,6.6vw,7.2rem);line-height:1.07;max-width:1100px}.mission-hero .hero-copy .lead{max-width:560px}.mission-hero .hero-scene{top:100px;right:-14%;width:72%;height:90%;opacity:.58}.mission-hero .scene-label{bottom:10%;right:22%;left:auto}.mission-hero .hero-pills{border-top:1px solid #65724588;padding-top:20px;max-width:480px}.trust-bar{border-top:1px solid #596642;background:#101414}.service-grid{gap:1px;background:var(--line);border:1px solid var(--line)}.service-card{border:0;border-radius:0;background:#101518;position:relative}.service-card:hover{background:#19201d}.service-art{height:210px;opacity:.8}.service-card .card-action{color:#cee6a0}.case-section .project-grid{grid-template-columns:1.25fr 1fr;gap:65px 45px}.case-section .project-card:nth-child(even){margin-top:100px}.project-card{border:0;border-radius:0;background:none}.project-card-body{padding:28px 0}.project-card h3{font-size:clamp(1.65rem,2.5vw,2.7rem)}.project-image{border-radius:0;border-bottom:3px solid #acdb47}.workday{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;background:#c7ff3d;color:#111a0c}.workday em{color:#223419;-webkit-text-fill-color:#223419;background:none}.workday p,.workday .eyebrow{color:#283819}.workday .button.secondary{color:#111a0c;background:transparent;border-color:#39492a}.team-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:25px}.team-grid h3{font-size:1.4rem}.team-grid .portrait{aspect-ratio:3/4}.team-grid .portrait img{object-position:center 25%}.team-grid a[href*="ravi-kumar"] .portrait img{object-position:center 18%}.profile-work .number-list{max-width:950px}.profile-work h2{max-width:950px}.eyebrow{font-size:.875rem}.card-category,.experience,.sample-note{font-size:.875rem}.topbar{letter-spacing:.08em}.footer-grid>div:last-child a{overflow-wrap:anywhere}.page-hero{border-bottom:1px solid #303a42}.page-hero .technical-visual{border-radius:0;box-shadow:18px 18px 0 #c7ff3d0b}.technical-visual .visual-sweep{opacity:.25}
@media(max-width:1100px){.team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mission-hero .hero-copy{width:85%}.workday{gap:35px}.case-section .project-grid{gap:35px}}
@media(max-width:700px){.mission-hero{min-height:780px;padding-top:45px}.mission-hero .hero-copy{width:100%}.mission-hero .hero-copy h1{font-size:clamp(3rem,10vw,4.5rem)}.mission-hero .hero-scene{top:180px;right:-40%;width:120%;opacity:.24}.mission-hero .scene-label{display:none}.case-section .project-grid{grid-template-columns:1fr}.case-section .project-card:nth-child(even){margin-top:0}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-grid h3{font-size:1.2rem}.workday{grid-template-columns:1fr;gap:25px}.service-art{height:210px}.page-hero .technical-visual{box-shadow:8px 8px 0 #c7ff3d0b}.topbar>span{font-size:.65rem;letter-spacing:.02em}}
/* Interactive drafting surfaces and accessible horizontal galleries. */
.model-workspace{width:100%;height:100%;display:flex;flex-direction:column;background:#11191b;border:1px solid #667b49;box-shadow:0 30px 80px #0009;transform:perspective(1400px) rotateY(-10deg) rotateX(4deg);transform-origin:center;transition:transform .8s;border-radius:8px;overflow:hidden}.model-workspace:hover,.model-workspace:focus-within{transform:perspective(1400px) rotateY(0) rotateX(0)}.workspace-toolbar,.workspace-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 18px;background:#182123;position:relative;z-index:2;font-size:.75rem}.workspace-toolbar>span{letter-spacing:.1em;color:#c7ff3d}.workspace-toolbar button{border:0;background:transparent;color:#d3ded5;padding:9px 12px;border-radius:3px}.workspace-toolbar button[aria-pressed=true]{background:#c7ff3d;color:#17200f}.workspace-stage{flex:1;min-height:250px;position:relative;overflow:hidden;background-color:#0c1215;background-image:linear-gradient(#90b46512 1px,transparent 1px),linear-gradient(90deg,#90b46512 1px,transparent 1px);background-size:32px 32px;transform-style:preserve-3d;cursor:crosshair}.workspace-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:translateZ(0) scale(.92) rotate(-2deg);transition:opacity .8s,transform 1.2s;pointer-events:none}.workspace-image.active{opacity:1;transform:scale(1) rotate(0)}.workspace-image.sheet{object-fit:contain;background:#e6e9e1}.workspace-footer{font-size:.75rem;color:#b1bdb6}.workspace-footer a{color:#c7ff3d}.mission-hero .hero-scene{right:3%;top:170px;width:46%;height:64%;opacity:1}.mission-hero .hero-copy{width:55%;max-width:900px}.mission-hero .hero-copy h1{font-size:clamp(3.6rem,5.6vw,6.1rem)}.mission-hero .scene-label{display:none}.mission-hero .lead{max-width:500px}.drawing-crosshair{position:absolute;left:var(--mouse-x,50%);top:var(--mouse-y,50%);width:14px;height:14px;border:1px solid #c7ff3d;transform:translate(-50%,-50%);z-index:5;pointer-events:none;opacity:0}.drawing-crosshair:before,.drawing-crosshair:after{content:'';position:absolute;background:#c7ff3d99}.drawing-crosshair:before{height:1px;width:1500px;left:-750px;top:6px}.drawing-crosshair:after{width:1px;height:1500px;top:-750px;left:6px}.workspace-stage:hover .drawing-crosshair{opacity:1}.technical-visual{transform-style:preserve-3d;perspective:1100px;cursor:crosshair}.page-hero .technical-visual{animation:documentOrbit 12s ease-in-out infinite;transform-origin:center;box-shadow:10px 10px 0 #c7ff3d16,20px 20px 0 #c7ff3d07}.page-hero .technical-visual:hover{animation-play-state:paused}.page-hero .technical-visual>img{animation:none}.page-hero .technical-visual:after{content:'';position:absolute;inset:12px;border:1px solid #c7ff3d00;pointer-events:none;transition:border-color .3s}.page-hero .technical-visual:hover:after{border-color:#c7ff3daa}.service-card:hover,.project-card:hover .project-image{outline:1px solid #c7ff3d;outline-offset:-1px}.delivery-stats{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:25px;padding:55px 5%;background:#12191a;border-top:1px solid #61754a;border-bottom:1px solid #303a42}.delivery-stats strong{display:block;color:#c7ff3d;font-size:clamp(3rem,4.5vw,5rem);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.06em;margin-bottom:14px}.delivery-stats h2{font-size:1rem;line-height:1.5;letter-spacing:0}.delivery-stats p{font-size:.8125rem;margin:8px 0 0;color:#a2b3a5}.software-reel{padding-top:65px;padding-bottom:65px}.software-reel h2{font-size:clamp(2rem,3.5vw,3.5rem)}.carousel-shell{margin-top:35px}.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;font-size:.875rem;color:#b5c4b7}.carousel-controls>div{display:flex;gap:8px}.carousel-controls button{width:43px;height:43px;display:grid;place-items:center;background:#18211b;border:1px solid #4a5e37;border-radius:50%;color:#d0edb0}.carousel-controls button:hover{background:#c7ff3d;color:#182011}.carousel-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#6c833e #17201a;padding:4px 2px 18px;overscroll-behavior-x:contain}.carousel-track>*{scroll-snap-align:start;flex-shrink:0}.tool-card{width:230px;min-height:170px;background:#18201f;border:1px solid #374938;border-radius:7px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:28px}.tool-card img{height:58px;max-width:165px;object-fit:contain;object-position:left center}.tool-card img[src*=tekla],.tool-card img[src*=acc]{background:white;padding:8px;border-radius:3px}.tool-card h3{font-size:1rem;line-height:1.4}.person-slide{display:grid;grid-template-columns:190px 1fr;width:600px;gap:30px;background:#131b1d;padding:25px;border:1px solid #354234;border-radius:6px}.person-slide .portrait{aspect-ratio:3/4}.person-slide .portrait img{object-position:center 20%}.person-slide h3{font-size:2rem;margin-bottom:15px}.person-slide .eyebrow{font-size:.75rem;display:block;margin:5px 0 15px}.person-slide p{font-size:.9375rem;line-height:1.7}.planning-lead{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center;margin:45px 0 60px}.planning-lead .technical-visual{height:370px;box-shadow:14px 14px 0 #c7ff3d14}.planning-lead .technical-visual img{object-fit:contain;background:#f4f4ee}.planning-lead h3{font-size:2.2rem;margin-bottom:25px}.planning-feature .service-art{object-fit:contain;background:#eeeee8}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px}.package-detail{display:grid;grid-template-columns:1.2fr 1fr;gap:65px}.package-detail h2{font-size:2.2rem;margin:12px 0 26px}.package-detail h3{font-size:1.2rem;color:#c7ff3d;margin:30px 0 15px}.package-detail ul{list-style:disc;padding-left:22px;color:#c0cdc4;line-height:1.9;margin-bottom:35px}.package-detail li{padding:6px 0}.package-detail aside{background:#151f1a;padding:32px;border-top:2px solid #c7ff3d}.motion-paused .model-workspace,.motion-paused .page-hero .technical-visual{transform:none!important;animation:none!important}.motion-paused .drawing-crosshair{display:none}@keyframes documentOrbit{0%,100%{transform:perspective(1100px) rotateY(-5deg) rotateX(2deg) translateY(0)}50%{transform:perspective(1100px) rotateY(3deg) rotateX(-1deg) translateY(-10px)}}
@media(max-width:1100px){.mission-hero .hero-copy{width:60%}.mission-hero .hero-scene{right:-5%;width:46%;top:230px;height:55%}.workspace-toolbar{flex-direction:column;align-items:flex-start}.package-grid{grid-template-columns:1fr 1fr}.planning-lead{gap:35px}.person-slide{width:560px}}
@media(max-width:700px){.mission-hero{min-height:0;max-height:none;height:auto;padding-bottom:45px;display:block}.mission-hero .hero-copy{width:100%}.mission-hero .hero-copy h1{font-size:clamp(3rem,10vw,4.5rem)}.mission-hero .hero-scene{position:relative;right:auto;top:auto;width:100%;height:350px;margin-top:40px}.model-workspace{transform:perspective(1000px) rotateX(3deg);box-shadow:0 15px 40px #0008}.workspace-toolbar{flex-direction:row;align-items:center;padding:10px}.workspace-toolbar>span{font-size:.65rem}.workspace-toolbar button{font-size:.75rem;padding:8px}.workspace-stage{min-height:220px}.workspace-footer{font-size:.65rem;padding:10px}.delivery-stats{grid-template-columns:1fr 1fr;gap:35px 20px;padding:40px 6%}.delivery-stats strong{font-size:3.5rem}.delivery-stats h2{font-size:.875rem}.delivery-stats p{font-size:.75rem}.tool-card{width:195px;min-height:150px;padding:24px}.person-slide{width:88%;min-width:270px;grid-template-columns:1fr;gap:20px}.person-slide .portrait{height:230px;aspect-ratio:auto}.person-slide h3{font-size:1.65rem}.person-slide p{font-size:.875rem}.planning-lead,.package-detail,.package-grid{grid-template-columns:1fr;gap:30px}.planning-lead .technical-visual{height:280px}.planning-lead h3{font-size:1.8rem}.package-detail aside{padding:25px}.drawing-crosshair{display:none}}
@media(prefers-reduced-motion:reduce){.model-workspace,.page-hero .technical-visual{transform:none!important;animation:none!important}.drawing-crosshair{display:none}}

/* Tablet layouts keep navigation and the complete model workspace within reach. */
@media(min-width:701px) and (max-width:1100px){.mission-hero{display:block;height:auto;min-height:0;max-height:none;padding-top:65px;padding-bottom:60px}.mission-hero .hero-copy{width:100%;max-width:760px}.mission-hero .hero-copy h1{font-size:clamp(3.6rem,6.5vw,4.6rem)}.mission-hero .hero-scene{position:relative;top:auto;right:auto;width:100%;height:460px;margin-top:45px}.mission-hero .workspace-toolbar{flex-direction:row;align-items:center}.mission-hero .model-workspace{transform:perspective(1400px) rotateX(2deg)}}
@media(min-width:1101px){.mission-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:48px;align-items:center;height:auto;min-height:760px;max-height:none;padding-top:80px;padding-bottom:80px}.mission-hero .hero-copy{width:100%;min-width:0}.mission-hero .hero-copy h1{font-size:clamp(3.4rem,4.7vw,5.25rem)}.mission-hero .hero-scene{position:relative;right:auto;top:auto;width:100%;height:clamp(430px,36vw,600px);min-width:0}.mission-hero .model-workspace{transform:perspective(1400px) rotateY(-4deg) rotateX(2deg)}}
@media(min-width:1700px){.mission-hero{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}.mission-hero .hero-copy{margin-left:0}.delivery-stats{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}

/* A native drafting cursor: precise, without trails or pointer lag. */
@media (hover:hover) and (pointer:fine){
 html,body,body *{cursor:url('/assets/cursor-crosshair.svg') 16 16,crosshair}
 a,a *,button,button *,summary,summary *,[role=button],[role=button] *{cursor:url('/assets/cursor-select.svg') 16 16,pointer}
 input:not([type=button]):not([type=submit]):not([type=range]):not([type=checkbox]):not([type=radio]),textarea,[contenteditable=true]{cursor:text}
 input[type=range]{cursor:ew-resize}
 .drawing-crosshair{display:none!important}
}
@media (forced-colors:active){html,body,body *{cursor:auto}a,button,summary{cursor:pointer}}

/* Keep narrow layouts in flow, with complete labels and a centred workspace. */
.button{max-width:100%;white-space:normal;text-align:center;overflow-wrap:break-word}
.section>*,.hero-copy,.hero-scene,.workspace-toolbar>*,.workspace-footer>*{min-width:0}
@media(max-width:700px){
 .mission-hero .hero-copy{margin-inline:0}
 .mission-hero .hero-copy h1{font-size:clamp(2.35rem,10vw,4.25rem);overflow-wrap:break-word}
 .mission-hero .hero-copy h1 em{max-width:calc(100% - 6px);margin-inline:0;box-decoration-break:clone;-webkit-box-decoration-break:clone}
 .home-hero .actions{flex-direction:column;align-items:stretch}
 .home-hero .actions .button{width:100%;flex:none;white-space:normal;padding:16px 20px;min-height:54px}
 .mission-hero .hero-scene{width:100%;height:auto;aspect-ratio:auto;margin:36px auto 0;inset:auto}
 .mission-hero .model-workspace{height:auto;min-height:380px;transform:none!important}
 .workspace-toolbar{flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px 12px;text-align:center}
 .workspace-toolbar>span{font-size:.75rem;letter-spacing:.1em}
 .workspace-toolbar>[role=group]{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}
 .workspace-toolbar button{min-height:44px;min-width:64px;padding:10px 13px;font-size:.875rem}
 .workspace-stage{min-height:240px;aspect-ratio:4/3}
 .workspace-footer{justify-content:center;flex-wrap:wrap;text-align:center;padding:14px 12px;gap:10px 16px;font-size:.75rem;line-height:1.5}
 .hero-pills{flex-wrap:wrap;gap:14px}
 .workflow-tabs{flex-wrap:wrap}
 .workflow-art{width:100%;min-width:0;min-height:0;aspect-ratio:4/3}
 .workflow-tabs button{white-space:normal;min-width:0;padding:14px 8px;line-height:1.4}
 .contact-layout,.form-row{min-width:0}
}
/* Mobile controls remain comfortably tappable, including compact headers. */
@media(max-width:1100px){
 #navigation{overscroll-behavior:contain}
 #navigation>a,#navigation>button,.nav-group summary{min-height:44px}
 .mega a{min-height:44px;display:flex;align-items:center}
 .workspace-toolbar button{min-height:44px}
 .dialog-head button,dialog>button,.gallery-controls button{min-width:44px;min-height:44px}
}
@media(max-width:700px){
 .topbar{height:auto;min-height:44px;gap:12px}.topbar>span{line-height:1.4}
 .topbar .motion-toggle{min-height:44px;flex:none;font-size:12px}
 form input,form select,form textarea,#site-search{font-size:16px}
 #search-dialog,#subscribe-dialog{padding:20px 16px;max-height:calc(100dvh - 32px)}
 .dialog-head{gap:12px;margin-bottom:20px}.dialog-head h2{font-size:1.6rem}
 .cookie-actions{flex-wrap:wrap}.cookie-actions .button{flex-basis:100px}
 .socials a,.footer-links a,.footer-links button{display:inline-flex;align-items:center;min-height:44px}
}
@media(hover:none),(pointer:coarse){
 [data-tilt],.magnetic{transform:none!important}
 .drawing-crosshair{display:none}
 .button:after{display:none}
}

/* Reviewed portfolio presentation */
.workspace-toolbar [role=tablist]{display:flex;flex-wrap:wrap;gap:6px}.workspace-toolbar button[aria-selected=true]{background:#c7ff3d;color:#111}.workspace-toolbar button:focus-visible{outline:2px solid #c7ff3d;outline-offset:3px}.workspace-stage{display:grid;min-height:0}.workspace-stage .workspace-image{position:relative;inset:auto;grid-area:1/1;width:100%;height:auto;max-height:420px;object-fit:contain}.workspace-stage .workspace-image[hidden]{display:none}.workspace-stage .workspace-image.sheet{background:#fff}.workspace-footer{gap:14px}.workspace-footer span{line-height:1.6}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-gallery img,.gym-reference img{width:100%;height:auto;object-fit:contain}.gym-reference{margin:30px 0 0;min-width:0}.gym-reference figcaption,.reference-attribution{font-size:.85rem;line-height:1.6;margin-top:12px}.gym-reference .sample-note{margin:12px 0 20px}.gym-reference-hero{display:flex;flex-direction:column;background:#f4f4ee}.gym-reference-hero img{object-fit:contain!important;height:calc(100% - 36px)!important}.reference-attribution{color:#222;padding:0 12px;margin:0}#gallery-image{object-fit:contain;max-width:100%;max-height:80vh}
@media(max-width:700px){.workspace-toolbar{flex-direction:column;align-items:flex-start!important}.workspace-toolbar [role=tablist]{width:100%;justify-content:flex-start}.workspace-toolbar button{min-height:44px;font-size:.8rem;padding:10px}.workspace-footer{flex-wrap:wrap}.mission-hero .hero-scene{height:auto}.project-gallery{grid-template-columns:1fr}.gym-reference .button{white-space:normal}.model-workspace{animation:none;transform:none}}
@media(prefers-reduced-motion:reduce){.model-workspace{animation:none!important;transform:none!important}}

.workspace-stage{align-items:center}.project-image img[src*="burdett-gym"]{object-fit:contain;background:#f4f4ee}


[data-contact-form] [data-submit-status]{line-height:1.6;min-height:1.6em}[data-contact-form] button:disabled{opacity:.65;cursor:wait}.sketch-contact form{display:grid;gap:12px}.sketch-contact textarea{width:100%;min-height:80px}.sketch-contact label{display:grid;gap:5px}.pg-help form textarea{width:100%;box-sizing:border-box}.pg-email-row{flex-wrap:wrap}.pg-email-row label{flex-basis:100%}

/* Native enquiry feedback */
[data-submit-status]:empty{display:none}
[data-submit-status][data-state="success"]{display:grid;grid-template-columns:42px 1fr;gap:6px 14px;margin:24px 0 0;padding:24px;border:1px solid #c7ff3d66;border-radius:12px;background:linear-gradient(135deg,#c7ff3d14,#14251d);color:#eaf6da;box-shadow:inset 3px 0 #c7ff3d}
.submit-mark{grid-row:1 / 3;display:grid;place-items:center;align-self:start;width:40px;height:40px;border-radius:50%;background:#c7ff3d;color:#132016;font-size:24px}
.submit-title{font-size:clamp(20px,2vw,26px);font-weight:650;line-height:1.25;letter-spacing:-.03em}.submit-detail{color:#bfcdbb;font-size:14px;line-height:1.6}
[data-submit-status][data-state="error"]{padding:14px;border-left:3px solid #f2b58a;background:#f2b58a12}
@media(max-width:480px){[data-submit-status][data-state="success"]{padding:18px;grid-template-columns:32px 1fr;gap:6px 10px}.submit-mark{width:32px;height:32px;font-size:20px}}
