@font-face{font-family:Space;src:url(/assets/space-grotesk-latin.woff2)format("woff2");font-weight:300 700;font-display:swap}:root{--ink:#142b40;--muted:#516272;--paper:#f7f9fa;--white:#fff;--line:#dce3e8;--blue:#2058d5;--mint:#b5ead2;--navy:#112a40;--radius:18px;--font:Space,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--paper);color:var(--ink);font:16px/1.65 var(--font);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{letter-spacing:-.045em;font-weight:600;line-height:1.12}h1{font-size:clamp(2.8rem,5.4vw,5.25rem)}h2{font-size:clamp(2.1rem,3.5vw,3.5rem)}h3{font-size:1.45rem}p{color:var(--muted)}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{background:var(--mint);color:var(--ink)}.wrap{width:min(1200px,100% - 80px);margin-inline:auto}.skip{z-index:100;background:#fff;padding:12px;position:fixed;top:-100px}.skip:focus{top:0}.site-header{backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:20;background:#f7f9faf7;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:96px;display:flex}.brand{white-space:nowrap;align-items:center;gap:12px;font-size:19px;font-weight:600;line-height:1.2;display:flex}.monogram{background:var(--ink);width:46px;height:46px;color:var(--mint);border-radius:12px;place-items:center;font-size:36px;font-weight:600;line-height:1;display:grid}.brand-sub{letter-spacing:.12em;color:var(--muted);margin-top:6px;font:10px/1.4 monospace;display:block}nav{align-items:center;gap:26px;font-size:14px;display:flex}nav a{padding:9px 0}nav a.selected{color:var(--blue)}.nav-contact{border:1px solid var(--ink);border-radius:7px;padding:10px 20px}.menu-toggle{display:none}.eyebrow{letter-spacing:.15em;text-transform:uppercase;color:var(--blue);font:600 12px/1.5 monospace;display:block}.hero{grid-template-columns:1.22fr 1fr;align-items:center;gap:70px;padding:78px 0 62px;display:grid}.hero h1{max-width:680px;margin:26px 0 24px}.hero h1 em{color:var(--blue);font-style:normal}.hero .intro{max-width:550px;font-size:18px;line-height:1.7}.hero .role{color:var(--ink);margin-top:20px;font-size:15px}.actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:7px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:13px 22px;font-size:14px;font-weight:600;transition:background .16s,color .16s;display:inline-flex}.button:hover{color:#fff;background:var(--blue);border-color:var(--blue)}.button.secondary{color:var(--ink);background:0 0;border-color:#bdc9d3}.button.light{background:var(--mint);color:var(--ink);border-color:var(--mint)}.button.small{min-height:42px;padding:9px 15px;font-size:13px}.hero-footnote{color:var(--muted);margin-top:24px;font:12px/1.6 monospace}.lab-card{background:var(--navy);color:#fff;border-radius:22px;position:relative;overflow:hidden;transform:rotate(1.2deg);box-shadow:0 20px 48px #142b4018}.lab-top{letter-spacing:.08em;color:#c8d7e3;border-bottom:1px solid #ffffff25;justify-content:space-between;padding:21px 24px;font:11px/1.4 monospace;display:flex}.lab-image{aspect-ratio:1.5;background:#ced4d8;padding:0;overflow:hidden}.lab-image img{object-fit:cover;width:100%;height:100%}.lab-caption{padding:22px 24px 25px}.lab-caption h2{letter-spacing:-.04em;margin:10px 0;font-size:24px}.lab-caption p{color:#c0d0df;font-size:13px}.lab-chips{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.lab-chips span{color:#d8e7f2;border:1px solid #ffffff35;border-radius:4px;padding:4px 9px;font:11px/1.5 monospace}.capabilities{border-block:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:18px;padding:21px 0;font:13px/1.7 monospace;display:flex}.capabilities strong{color:var(--ink);font-weight:500}.section-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:36px;display:flex}.filters{flex-wrap:wrap;gap:9px;margin-bottom:28px;display:flex}.filter{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:30px;min-height:42px;padding:8px 15px;font-size:13px}.filter[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.project-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.project-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:transform .2s,box-shadow .2s;display:block;position:relative;overflow:hidden}.project-card:hover{color:var(--ink);transform:translateY(-4px);box-shadow:0 12px 35px #142b4010}.project-image{aspect-ratio:1.52;background:#e2e9ef;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.project-card:hover img{transform:scale(1.04)}.project-meta{color:var(--blue);text-transform:uppercase;letter-spacing:.055em;justify-content:space-between;gap:15px;margin-bottom:15px;font:11px/1.5 monospace;display:flex}.project-body h3{margin-bottom:12px;font-size:23px}.project-body p{font-size:14px;line-height:1.65}.tags{flex-wrap:wrap;gap:7px;margin-top:22px;display:flex}.tags span{color:var(--muted);background:#f0f4f6;border-radius:4px;padding:4px 8px;font:11px/1.5 monospace}.card-link{color:var(--ink);text-underline-offset:5px;margin-top:24px;font-size:13px;text-decoration:underline;display:block}.research-band{background:var(--navy);color:#fff;border-radius:24px;grid-template-columns:1.4fr 1fr;gap:60px;padding:55px;display:grid;overflow:hidden}.research-band .eyebrow{color:var(--mint);margin-bottom:19px}.research-band p{color:#c6d4df;max-width:560px;margin-top:22px}.research-list{border-left:1px solid #ffffff35;gap:25px;padding-left:25px;display:grid}.research-list strong{letter-spacing:-.02em;font-size:17px;font-weight:500;display:block}.research-list span{color:#bacbd9;margin-top:7px;font-size:14px;display:block}.about-preview{grid-template-columns:.7fr 1.3fr;align-items:center;gap:75px;display:grid}.portrait-frame{border-radius:20px;max-width:350px;position:relative;overflow:hidden}.portrait-frame img{aspect-ratio:1;object-fit:cover}.about-preview .eyebrow{margin-bottom:20px}.about-preview p{margin-top:20px}.facts{grid-template-columns:repeat(3,1fr);gap:15px;margin-top:32px;display:grid}.fact strong{letter-spacing:-.04em;font-size:32px;font-weight:500;line-height:1.3;display:block}.fact span{color:var(--muted);font-size:12px}.contact-band{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:35px;padding:65px 0;display:flex}.contact-band h2{margin-top:16px;font-size:clamp(32px,4vw,48px)}.contact-band p{max-width:600px;margin-top:20px}.site-footer{border-top:1px solid var(--line);padding:35px 0}.footer-inner{justify-content:space-between;align-items:center;gap:25px;font-size:12px;display:flex}.footer-inner .brand{font-size:15px}.footer-inner .monogram{width:34px;height:34px;font-size:27px}.footer-inner>div{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:15px;display:flex}.text-button{color:var(--muted);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.consent{border:1px solid var(--line);z-index:40;background:#fff;border-radius:12px;align-items:center;gap:25px;width:calc(100% - 40px);max-width:900px;padding:20px 24px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 10px 60px #142b4025}.consent strong{font-size:14px}.consent p{margin-top:5px;font-size:12px;line-height:1.6}.consent p a{text-decoration:underline}.consent-actions{flex-shrink:0;gap:8px;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-intro{max-width:900px;padding:75px 0 45px}.page-intro h1{margin:20px 0;font-size:clamp(42px,5vw,66px)}.page-intro p{max-width:730px;font-size:18px}.content-grid{grid-template-columns:1.6fr 1fr;gap:70px;padding-bottom:85px;display:grid}.prose{max-width:760px}.prose h2{margin:40px 0 18px;font-size:29px;line-height:1.2}.prose h3{margin:27px 0 12px;font-size:21px}.prose p+p{margin-top:16px}.prose li{color:var(--muted);margin-bottom:10px}.prose a:not(.button){color:var(--blue);text-underline-offset:3px;text-decoration:underline}.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:30px}.panel h2,.panel h3{font-size:24px}.panel p{margin-top:15px;font-size:14px}.panel+.panel{margin-top:24px}.meta-row{border-bottom:1px solid var(--line);padding:20px 0}.meta-row:last-child{border-bottom:0;padding-bottom:0}.meta-row dt{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font:11px/1.6 monospace}.meta-row dd{margin:7px 0 0;font-size:15px}.wide-image{object-fit:cover;border-radius:18px;width:100%;max-height:600px;margin-bottom:40px}.breadcrumb{color:var(--muted);margin-bottom:25px;font-size:13px}.timeline-item{border-left:2px solid var(--line);padding:0 0 30px 26px}.timeline-item h3{margin:9px 0;font-size:22px}.timeline-item .period{color:var(--blue);font:12px/1.6 monospace}.timeline-item p{margin-top:12px;font-size:15px}.book-grid{grid-template-columns:repeat(2,1fr);gap:24px;margin-top:30px;display:grid}.book{border:1px solid var(--line);background:#fff;border-radius:12px;gap:20px;padding:25px;display:flex}.book img{object-fit:contain;align-self:flex-start;width:85px}.book h3{font-size:18px;line-height:1.3}.book p{margin-top:10px;font-size:13px}.note{border-left:3px solid var(--blue);color:var(--muted);background:#eaf0f6;margin-top:25px;padding:18px 22px;font-size:14px}.contact-email{letter-spacing:-.025em;overflow-wrap:anywhere;color:var(--blue);font-size:clamp(22px,4vw,40px)}.link-row{flex-wrap:wrap;gap:25px;margin-top:25px;font-size:15px;display:flex}.link-row a{text-underline-offset:5px;text-decoration:underline}.print-only{display:none}@media (width<=1050px){.wrap{width:calc(100% - 48px)}nav{gap:17px;font-size:13px}.hero{gap:35px}.project-grid{gap:16px}.project-body{padding:20px}.research-band{gap:35px;padding:40px}.footer-inner{flex-wrap:wrap}.footer-inner>div{justify-content:flex-start}.hero h1{font-size:clamp(44px,6vw,64px)}}@media (width<=760px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:78px}.brand{font-size:17px}.monogram{width:40px;height:40px;font-size:30px}.menu-toggle{border:1px solid var(--line);background:#fff;border-radius:5px;gap:15px;padding:8px 12px;font-size:14px;display:flex}nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:8px;padding:20px;display:none;position:absolute;top:78px;left:0;right:0}nav.open{display:flex}nav a{padding:10px}.hero{grid-template-columns:1fr;gap:38px;padding:42px 0}.hero h1{margin-top:20px;font-size:clamp(44px,10vw,70px)}.hero .intro{font-size:16px}.lab-card{max-width:550px;transform:none}.lab-image{aspect-ratio:1.8}.capabilities{flex-wrap:wrap;justify-content:flex-start;gap:10px 28px;font-size:12px}.section{padding:55px 0}.section-heading{flex-direction:column;align-items:flex-start;gap:20px}.project-grid{grid-template-columns:repeat(2,1fr)}.project-body h3{font-size:22px}.research-band{grid-template-columns:1fr;gap:35px;padding:30px}.research-list{padding-left:20px}.about-preview{grid-template-columns:1fr;gap:35px}.portrait-frame{max-width:270px}.facts{margin-top:25px}.contact-band{flex-direction:column;align-items:flex-start;padding:45px 0}.footer-inner{flex-direction:column;align-items:flex-start;gap:20px}.consent{flex-direction:column;align-items:flex-start;gap:13px;padding:17px;bottom:12px}.consent-actions{width:100%}.consent-actions button{flex:1}.page-intro{padding:45px 0 35px}.content-grid{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.book-grid{grid-template-columns:1fr}.wide-image{margin-bottom:20px}}@media (width<=480px){.project-grid{grid-template-columns:1fr}.hero h1{font-size:44px}.fact strong{font-size:27px}.lab-top{padding:18px}.lab-caption{padding:20px}.panel{padding:24px}.actions .button{padding:12px 17px}.filters{gap:7px}.filter{padding:7px 12px;font-size:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{.site-header,.site-footer,.consent,.actions,.no-print{display:none!important}body{color:#111;background:#fff;font:11pt/1.5 Arial}.wrap{width:100%}.section{padding:20px 0}.page-intro{padding:0 0 20px}.content-grid{display:block}.panel{break-inside:avoid}.print-only{display:block}h1{font-size:28pt!important}h2{font-size:18pt!important}a{color:#111!important}p{color:#333}}.project-type-art{aspect-ratio:1.52;color:var(--mint);background:linear-gradient(130deg,#173c59,#12283b);flex-direction:column;justify-content:space-between;padding:30px;display:flex}.project-type-art>span{letter-spacing:-.1em;font:68px/1 monospace}.project-type-art>div{letter-spacing:.06em;color:#c3d8e7;font:11px/1.5 monospace}.skills-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.skills-grid .panel{margin:0}.skills-grid h3{font-size:20px}.download-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.download-card{padding:35px;margin:0!important}.download-card .eyebrow{margin-bottom:20px}.download-card h2{font-size:32px}.download-meta{margin-top:25px!important;font:12px/1.6 monospace!important}.book .eyebrow{margin-bottom:12px}@media (width<=760px){.download-grid,.skills-grid{grid-template-columns:1fr}.download-card{padding:25px}}.lab-card:hover{color:#fff}.fact strong>span{font-size:inherit;color:inherit}:root{--ink:#101c22;--muted:#526069;--paper:#f3f4ee;--white:#fff;--line:#d7ded8;--blue:#284eae;--mint:#c7ee8d;--navy:#101c22;--radius:16px}body{background:var(--paper)}.wrap{width:min(1240px,100% - 80px)}.site-header{background:#f3f4eee6;border:0}.header-inner{border-bottom:1px solid var(--line);min-height:88px}.brand-sub{letter-spacing:.17em;font-size:9px}.monogram{border-radius:50%;transition:transform .3s}.brand:hover .monogram{transform:rotate(-12deg)}nav{gap:28px;font-size:13px}.nav-contact{background:var(--ink);color:#fff!important;border-radius:100px!important;padding:11px 21px!important}.eyebrow{letter-spacing:.14em;color:#53653d;font-size:10px}.status-dot{background:#699e37;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 0 5px #a6cb6520}.hero-v2{grid-template-columns:1.1fr 1fr;gap:85px;min-height:710px;padding:65px 0 54px}.hero-copy{align-self:center}.hero-v2 h1{letter-spacing:-.07em;margin:25px 0 23px}.hero-name{letter-spacing:-.075em;margin-bottom:23px;margin-left:-5px;font-size:clamp(64px,7.7vw,106px);line-height:1;display:block}.hero-role{letter-spacing:-.045em;font-size:clamp(27px,3vw,42px);font-weight:400;line-height:1.2;display:block}.hero-role em{color:var(--muted)!important}.hero-v2 .intro{max-width:425px;font-size:16px;line-height:1.8}.button{border-radius:100px;gap:20px;padding:14px 24px;font-size:13px;transition:background .2s,box-shadow .2s,transform .2s}.button:hover{background:#253b43;border-color:#253b43;transform:translateY(-2px);box-shadow:0 8px 20px #101c2210}.button.secondary:hover{background:#e5e9de}.button .arrow{font-size:20px;line-height:1}.hero-now{border-top:1px solid var(--line);align-items:baseline;gap:20px;max-width:440px;margin-top:38px;padding-top:20px;display:flex}.mono-label{letter-spacing:.12em;color:var(--muted);flex-shrink:0;font:9px/1.6 monospace}.hero-now p{max-width:330px;font-size:12px;line-height:1.7}.hero-footnote{color:#617047;max-width:430px;margin-top:13px;font-size:10px;line-height:1.6}.hero-object{padding:15px 0 25px;position:relative}.orbit-label,.object-footnote{letter-spacing:.2em;color:var(--muted);font:9px/1.5 monospace;display:block}.orbit-label{text-align:right;margin-bottom:13px}.object-footnote{margin:19px 0 0 5px}.hero-object:before{content:"";z-index:-1;opacity:.36;background:radial-gradient(#a9b3a5 1px,#0000 1px) 0 0/16px 16px;position:absolute;inset:-26px -27px 7px;mask-image:linear-gradient(140deg,#0000,#000,#0000)}.lab-card{background:var(--navy);color:#fff;border:1px solid #ffffff90;border-radius:15px;display:block;transform:none;box-shadow:0 24px 50px #192c2320}.lab-top{letter-spacing:.12em;padding:18px 22px;font-size:9px}.lab-top span:last-child{color:#cbd7c3}.lab-image{aspect-ratio:1.7;background:#dfbf44;overflow:hidden}.lab-image img{object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.lab-card:hover .lab-image img{transform:scale(1.035)}.lab-caption{padding:24px 27px 29px;position:relative}.lab-caption .eyebrow{color:var(--mint)}.lab-caption h2{letter-spacing:-.04em;margin:13px 0;font-size:35px;line-height:1.02}.lab-caption p{color:#b4c4c5;max-width:280px;font-size:12px}.lab-chips{gap:13px;margin-top:20px}.lab-chips span{color:#c8d4cf;border:0;padding:0;font-size:9px}.lab-open{width:44px;height:44px;color:var(--mint);border:1px solid #ffffff45;border-radius:50%;place-items:center;font-size:24px;transition:background .2s,transform .2s;display:grid;position:absolute;bottom:32px;right:25px}.lab-card:hover .lab-open{background:var(--mint);color:var(--ink);transform:rotate(5deg)}.capabilities{letter-spacing:.02em;padding:24px 0;font-size:11px}.capabilities strong{letter-spacing:.13em;font-size:9px}.section{padding:88px 0}.section-heading{margin-bottom:35px}.section-heading h2{letter-spacing:-.055em;font-size:clamp(30px,3.5vw,47px)}.section-heading p{max-width:325px;font-size:13px}.section-heading .eyebrow{margin-bottom:13px}.filters{border-bottom:1px solid var(--line);gap:22px;margin-bottom:34px}.filter{color:var(--muted);background:0 0;border:0;border-radius:0;padding:11px 0 14px;font-size:12px;position:relative}.filter[aria-pressed=true]{color:var(--ink);background:0 0}.filter:after{content:"";background:var(--ink);transform-origin:0;height:2px;transition:transform .25s;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.filter[aria-pressed=true]:after,.filter:hover:after{transform:scaleX(1)}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.project-card{isolation:isolate;border-color:#d3dcd1;border-radius:14px}.project-card:hover{color:var(--ink);box-shadow:0 22px 45px #182c2015}.project-image,.project-type-art{aspect-ratio:1.9}.project-image img{object-fit:cover}.project-number{z-index:2;backdrop-filter:blur(8px);width:33px;height:33px;color:var(--ink);background:#f5f7f0dd;border:1px solid #ffffffa0;border-radius:50%;place-items:center;font:11px/1 monospace;display:grid;position:absolute;top:15px;left:15px}.project-body{padding:27px 30px 24px}.project-meta{color:#597037;letter-spacing:.09em;font-size:9px}.project-body h3{letter-spacing:-.04em;font-size:27px;font-weight:500}.project-body p{max-width:450px;font-size:13px}.tags{gap:0;margin-top:21px}.tags span{background:0 0;padding:0;font-size:10px}.tags span+span:before{content:" / ";white-space:pre;color:#8a9685}.card-link{border-top:1px solid #e3e8df;justify-content:space-between;align-items:center;margin-top:21px;padding-top:17px;font-size:12px;text-decoration:none;display:flex}.card-link .arrow{font-size:22px;transition:transform .3s}.project-card:hover .arrow{transform:translate(3px,-3px)}.project-type-art{background:radial-gradient(at 85% 10%,#415542,#101c22 65%);padding:30px;position:relative;overflow:hidden}.project-type-art:before{content:"";border:1px solid #ffffff20;border-radius:50%;position:absolute;inset:15px}.project-type-art>span{opacity:.9;color:var(--mint);letter-spacing:-.09em;align-self:flex-end;font-size:95px}.project-type-art>div{font-size:9px;position:relative}.research-band{background:var(--ink);border-radius:18px;gap:70px;padding:60px;position:relative}.research-band:after{content:"+";color:#ffffff08;pointer-events:none;font:120px/1 monospace;position:absolute;top:5px;right:28px}.research-band h2{font-size:42px}.research-band p{font-size:14px}.research-list{gap:26px}.research-list strong{color:var(--mint);font-size:16px}.research-list span{font-size:12px}.about-preview{grid-template-columns:.8fr 1.2fr;gap:90px}.portrait-frame{border-radius:12px;transform:rotate(-2deg);box-shadow:15px 15px #e0e8d2}.about-preview h2{font-size:39px}.about-preview p{font-size:14px}.facts{border-top:1px solid var(--line);padding-top:25px}.fact strong{font-size:26px}.fact span{font-size:10px}.contact-band{background:var(--mint);border:0;border-radius:18px;margin-bottom:70px;padding:52px}.contact-band h2{font-size:40px}.contact-band p{max-width:650px;font-size:13px}.contact-band .eyebrow{color:#3f552b}.site-footer{padding:30px 0 24px}.statistics-note{color:#566354;font:10px/1.8 monospace;margin-top:24px!important}.statistics-note a{text-underline-offset:3px;text-decoration:underline}.footer-inner{font-size:11px}.back-top{border:1px solid var(--line);border-radius:50%;place-items:center;width:32px;height:32px;font-size:16px;display:grid}.page-intro{padding-top:65px}.panel{border-radius:13px}.download-card{transition:transform .3s,box-shadow .3s}.download-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #101c2210}[data-tilt]{--rx:0deg;--ry:0deg;--lift:0px;transform:perspective(1100px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(var(--lift));will-change:auto;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .35s}[data-tilt].tilting{will-change:transform;--lift:-5px;transition:transform .12s ease-out,box-shadow .3s}[data-tilt]:after{content:"";background:radial-gradient(circle at var(--px,50%) var(--py,50%),#ffffff18,transparent 60%);opacity:0;pointer-events:none;border-radius:inherit;transition:opacity .4s;position:absolute;inset:0}[data-tilt].tilting:after{opacity:1}.reveal-pending{opacity:0;transition:opacity .65s,translate .65s cubic-bezier(.2,.8,.2,1);translate:0 20px}.reveal-pending.is-revealed{opacity:1;translate:0}.arrow.nudge{animation:.3s ease-out arrow-nudge}@keyframes arrow-nudge{0%,to{translate:0}35%{translate:3px -3px}65%{translate:-1px 1px}}@media (width>=1500px){.hero-v2{min-height:760px}.hero-name{font-size:112px}.hero-role{font-size:43px}}@media (width<=1050px){.wrap{width:calc(100% - 48px)}.hero-v2{gap:45px;min-height:630px;padding-top:40px}.hero-name{font-size:72px}.hero-role,.lab-caption h2{font-size:29px}.lab-caption p{max-width:230px}.lab-open{width:36px;height:36px;bottom:24px;right:18px}.lab-chips{gap:9px}.hero-now{margin-top:25px}.research-band{gap:40px;padding:42px}.about-preview{gap:50px}}@media (width<=760px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:74px}.site-header{backdrop-filter:blur(12px)}.menu-toggle{background:0 0;border-radius:100px;font-size:12px}.hero-v2{grid-template-columns:1fr;gap:24px;min-height:0;padding:30px 0 36px}.hero-name{margin-bottom:12px;font-size:clamp(60px,14vw,90px)}.hero-role{font-size:clamp(26px,6.2vw,38px)}.hero-v2 h1{margin:18px 0}.hero-v2 .intro{max-width:520px;font-size:14px}.hero-v2 .actions{gap:10px;margin-top:23px}.hero-now{margin-top:22px;padding-top:15px}.hero-footnote{margin-top:10px}.hero-object{justify-self:center;width:100%;max-width:550px;margin-top:0;padding:0}.orbit-label{margin-bottom:9px;font-size:8px}.hero-object:before{inset:-5px -15px 0}.lab-top{padding:13px 18px}.lab-image{aspect-ratio:1.85}.lab-caption{padding:19px 21px 22px}.lab-caption h2{font-size:30px}.lab-caption h2 br{display:none}.lab-caption h2 br:after{content:" "}.lab-caption p{max-width:300px;font-size:11px}.lab-chips{margin-top:12px}.object-footnote{margin-top:12px;font-size:8px}.capabilities{gap:10px 22px;padding:18px 0;font-size:10px}.capabilities strong{width:100%;font-size:8px}.section{padding:55px 0}.section-heading{gap:15px}.section-heading h2{font-size:34px}.section-heading p{max-width:450px;font-size:12px}.filters{flex-wrap:nowrap;gap:18px;margin-bottom:24px;overflow-x:auto}.filter{white-space:nowrap;flex-shrink:0;font-size:10px}.project-grid{gap:20px}.project-body{padding:21px}.project-body h3{font-size:23px}.project-body p{font-size:12px}.project-meta{gap:10px;font-size:8px}.project-image,.project-type-art{aspect-ratio:1.6}.research-band{gap:35px;padding:30px}.research-band h2{font-size:32px}.research-list{gap:20px}.about-preview{gap:40px}.about-preview h2{font-size:32px}.portrait-frame{max-width:250px}.fact strong{font-size:24px}.contact-band{margin-bottom:42px;padding:28px}.contact-band h2{font-size:32px}.contact-band p{font-size:12px}.footer-inner{gap:18px}.footer-inner>p{display:none}.statistics-note{max-width:calc(100% - 36px);font-size:9px}nav{top:74px;box-shadow:0 12px 20px #101c2210}.page-intro{padding-top:40px}}@media (width<=540px){.project-grid{grid-template-columns:1fr}.project-image,.project-type-art{aspect-ratio:1.9}.hero-now{display:none}.hero-footnote{margin-top:16px;font-size:9px}.hero-v2 .intro{font-size:13px}.hero-v2 .button{min-height:45px;padding:12px 18px;font-size:12px}.lab-image{aspect-ratio:1.85}.hero-object{margin-top:5px}}@media (prefers-reduced-motion:reduce){[data-tilt],[data-tilt].tilting,.download-card:hover{transform:none!important}.reveal-pending{opacity:1;translate:none}.portrait-frame{transform:none}}@media (width>=1250px){.wrap{width:min(1480px,100% - 112px)}.hero-v2{grid-template-columns:1fr 1.05fr;gap:100px;min-height:760px}.hero-name{font-size:112px}.hero-role{font-size:42px}.lab-image{aspect-ratio:1.9}.hero-object{max-width:650px}.project-grid{gap:34px}.project-body{padding:32px 36px}.project-image,.project-type-art{aspect-ratio:1.95}.hero-v2 .intro{max-width:520px;font-size:18px}.section-heading h2{font-size:52px}.section-heading p{max-width:410px;font-size:15px}}@media (width>=1700px){.hero-v2{gap:120px}.hero-name{font-size:126px}.hero-role{font-size:46px}.section{padding:110px 0}}.showreel-section{grid-template-columns:.68fr 1.32fr;align-items:center;gap:72px;padding:84px 0 20px;display:grid}.showreel-copy h2{letter-spacing:-.055em;margin:20px 0;font-size:clamp(32px,3.4vw,49px);line-height:1.06}.showreel-copy h2 em{color:#637458;font-style:normal}.showreel-copy>p{color:var(--muted);max-width:350px;font-size:14px;line-height:1.8}.showreel-player{background:var(--ink);border-radius:16px;margin:0;overflow:hidden;box-shadow:0 20px 45px #14271c14}.showreel-player video{aspect-ratio:16/9;background:#101c22;width:100%;display:block}.showreel-player figcaption{color:#d5e9c0;letter-spacing:.08em;justify-content:space-between;gap:20px;padding:18px 22px;font:9px/1.5 monospace;display:flex}.reel-facts{gap:25px;margin-top:30px;display:flex}.reel-facts>span{color:var(--muted);font:9px/1.5 monospace}.reel-facts strong{color:var(--ink);margin-bottom:5px;font:30px/1.2 Space Grotesk,sans-serif;display:block}.project-card:has(img[src$=callerid_device\.png]) .project-image img,.project-card:has(img[src$=circuit-and-card\.jpg]) .project-image img{object-fit:contain;background:#eaf0e4;padding:30px}@media (width<=1000px){.showreel-section{grid-template-columns:1fr 1.2fr;gap:35px}.showreel-copy h2{font-size:34px}.reel-facts{gap:18px}}@media (width<=760px){.showreel-section{grid-template-columns:1fr;gap:25px;padding:45px 0 5px}.showreel-copy>p{max-width:560px}.showreel-copy h2{font-size:37px}.showreel-copy h2 br{display:none}.showreel-player figcaption{padding:14px;font-size:8px}.reel-facts{margin-top:22px}}.hero-person{justify-self:end;width:100%;max-width:590px;padding:8px 0 20px}.portrait-card{background:#101c22;border:1px solid #ffffff80;border-radius:19px;position:relative;overflow:hidden;box-shadow:0 24px 60px #182d241c}.portrait-photo{aspect-ratio:1.12;background:#b2c8d0;overflow:hidden}.portrait-photo img{object-fit:cover;object-position:50% 29%;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.8,.2,1);display:block}.portrait-card:hover .portrait-photo img{transform:scale(1.025)}.portrait-caption{color:#fff;justify-content:space-between;align-items:center;gap:20px;padding:24px 28px;display:flex}.portrait-caption .eyebrow{color:#c7ee8d;font-size:8px}.portrait-caption h2{letter-spacing:-.04em;color:#fff;margin:10px 0 5px;font-size:29px}.portrait-caption p{color:#bdccc3;font-size:11px}.portrait-contact{color:#c7ee8d;border:1px solid #ffffff50;border-radius:50%;flex-shrink:0;place-items:center;width:46px;height:46px;font-size:26px;display:grid}.portrait-contact:hover{color:#101c22;background:#c7ee8d}.hero-profile-links{color:#526069;justify-content:space-between;gap:22px;margin:22px 7px 0;font:11px/1.7 monospace;display:flex}.hero-profile-links a{border-bottom:1px solid #aebfa4;padding:5px 0;transition:color .2s}.hero-profile-links a:hover{color:#234f21}.hero-v2{min-height:730px}@media (width>=1250px){.hero-v2{grid-template-columns:1.1fr 1fr;gap:90px}.hero-person{max-width:580px}.hero-name{font-size:116px}}@media (width<=760px){.hero-person{justify-self:center;max-width:550px;margin-top:4px}.portrait-photo{aspect-ratio:1.2}.portrait-caption{padding:20px 22px}.portrait-caption h2{font-size:26px}.hero-profile-links{margin-top:16px;font-size:10px}.hero-v2{min-height:0}}@media (prefers-reduced-motion:reduce){.portrait-card:hover .portrait-photo img{transform:none}.portrait-photo img{transition:none}}.project-concept-label{color:#fff;letter-spacing:.03em;background:#101c22e8;border:1px solid #ffffff40;border-radius:100px;padding:6px 10px;font:9px/1.4 monospace;position:absolute;bottom:14px;right:14px}body:has(>.binary-background){isolation:isolate}.binary-background{--binary-edge-width:24px;z-index:-1;-webkit-user-select:none;user-select:none;opacity:.3;color:#52634f;contain:strict;width:100%;height:100dvh;position:fixed;inset:0;overflow:hidden;pointer-events:none!important}.binary-background-edge{width:var(--binary-edge-width);position:absolute;top:96px;bottom:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 9% 88%,#0000);mask-image:linear-gradient(#0000,#000 9% 88%,#0000)}.binary-background-edge--left{left:0;-webkit-mask-image:linear-gradient(90deg,#000 15%,#0000),linear-gradient(#0000,#000 9% 88%,#0000);mask-image:linear-gradient(90deg,#000 15%,#0000),linear-gradient(#0000,#000 9% 88%,#0000)}.binary-background-edge--right{right:0;-webkit-mask-image:linear-gradient(270deg,#000 15%,#0000),linear-gradient(#0000,#000 9% 88%,#0000);mask-image:linear-gradient(270deg,#000 15%,#0000),linear-gradient(#0000,#000 9% 88%,#0000)}.binary-background-edge--left,.binary-background-edge--right{-webkit-mask-composite:source-in;mask-composite:intersect}.binary-background-circuit{width:156px;height:100%;position:absolute;top:0;bottom:0;left:0;overflow:hidden}.binary-background-edge--right .binary-background-circuit{left:auto;right:0;transform:scaleX(-1)}.binary-background-traces{stroke:currentColor;stroke-width:1px;opacity:.65}.binary-background-traces circle{fill:var(--paper,#f3f4ee);stroke-width:.8px}.binary-background-signal{stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-dasharray:18 982;opacity:.8;animation:22s linear infinite binary-background-signal}.binary-background-edge--right .binary-background-signal{animation-duration:27s;animation-delay:-11s}.binary-background-matrix{opacity:.65;letter-spacing:.28em;white-space:nowrap;gap:3px;width:92px;font:400 8px/1.5 ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;display:grid;position:absolute;left:8px}.binary-background-matrix--1{top:23%}.binary-background-matrix--2{top:68%}.binary-background-edge--right .binary-background-matrix{text-align:right;left:auto;right:8px}.binary-background-edge--right .binary-background-matrix--1{top:36%}.binary-background-edge--right .binary-background-matrix--2{top:79%}.binary-background-matrix>span{opacity:1;min-height:12px;transition:opacity .85s ease-in-out;display:block}.binary-background-matrix>span[data-changing]{opacity:0}.binary-background[data-paused] .binary-background-signal{animation-play-state:paused}.binary-background[data-paused] .binary-background-matrix>span{transition:none}@keyframes binary-background-signal{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}@media (width>=1250px){.binary-background{--binary-edge-width:clamp(40px,calc((100vw - 1480px)/2 - 16px),144px)}}@media (width<=1050px){.binary-background{--binary-edge-width:16px}}@media (width<=760px){.binary-background{--binary-edge-width:12px}.binary-background-edge{top:80px}.binary-background-matrix{letter-spacing:.2em;font-size:7px;left:2px}.binary-background-edge--right .binary-background-matrix{right:2px}}@media (prefers-reduced-motion:reduce){.binary-background-signal{opacity:.3;stroke-dasharray:none;animation:none!important}.binary-background-matrix>span{opacity:1!important;transition:none!important}}@media print{.binary-background{display:none!important}}@media screen{html:root{color-scheme:dark;--paper:#0e1518;--ink:#eaf0eb;--muted:#aab9b2;--white:#162024;--line:#2c3b3d;--mint:#c3e3a8;--accent:#c3e3a8;--blue:#c3e3a8;--navy:#162124;--surface:#141e21;--surface-raised:#1b282b;--border-strong:#536b60;--accent-ink:#17221a}body{background:var(--paper);color:var(--ink)}body ::selection{background:var(--mint);color:var(--accent-ink)}body :focus-visible{outline-color:var(--mint)}body .skip{background:var(--mint);color:var(--accent-ink)}body .eyebrow{color:#adc799}body .site-header{background:#0e1518f2}body .header-inner{border-color:var(--line)}body .monogram{background:var(--mint);color:var(--accent-ink)}body .nav-contact{background:var(--mint);border-color:var(--mint);color:var(--accent-ink)!important}body .nav-contact:hover{background:#d3edbf}body .menu-toggle{color:var(--ink);border-color:var(--border-strong);background:0 0}body .site-header nav a.selected{color:var(--mint)}body .hero-name{color:#f1f5ee}body .hero-role{color:#d2ded6}body .hero-footnote{color:#a8be9c}body .hero-object:before{display:none}body .hero-profile-links{color:var(--muted)}body .hero-profile-links a{border-color:#526a59}body .hero-profile-links a:hover{color:var(--mint)}body .portrait-card,body .lab-card{background:var(--surface);border-color:#3d514a;box-shadow:0 24px 65px #0005}body .portrait-caption{background:#172326}body .portrait-caption h2{color:var(--ink)}body .portrait-caption p,body .lab-caption p{color:#b9c9c0}body .portrait-contact{color:var(--mint);border-color:#627866}body .portrait-contact:hover,body .lab-card:hover .lab-open{background:var(--mint);color:var(--accent-ink)}body .portrait-frame{box-shadow:15px 15px #203029}body .binary-background{color:#9eb68e}body .binary-background-circuit circle{display:none}body .button,body .button.light{background:var(--mint);border-color:var(--mint);color:var(--accent-ink);box-shadow:none}body .button:hover,body .button.light:hover{color:var(--accent-ink);background:#d3edbf;border-color:#d3edbf;box-shadow:0 8px 24px #0003}body .button.secondary{border-color:var(--border-strong);color:var(--ink);background:0 0}body .button.secondary:hover{background:var(--surface-raised);color:var(--ink);border-color:#829d7b}body .project-card,body .panel,body .book,body .consent{background:var(--surface);border-color:var(--line)}body .project-card:hover{color:var(--ink);border-color:#536b60;box-shadow:0 20px 45px #0004}body .project-image{background:#172124}body .project-number{color:var(--ink);background:#14201de8;border-color:#819676}body .project-meta{color:#aec797}body .card-link{border-color:var(--line)}body .tags span{color:#aab9b2;background:0 0}body .tags span+span:before{color:#76897c}body .filter{color:var(--muted);background:0 0}body .filter[aria-pressed=true]{color:var(--mint);background:0 0}body .filter:after{background:var(--mint)}body .download-card:hover{border-color:var(--border-strong);box-shadow:0 16px 35px #0004}body .note{border-left-color:var(--mint);color:#bdcdc1;background:#1d2b27}body .showreel-copy h2 em{color:#b0c89d}body .showreel-player{background:var(--surface);border:1px solid var(--line);box-shadow:0 20px 45px #0003}body .showreel-player figcaption{color:#bfceb8}body .research-band{background:#1a2827;border:1px solid #34473e}body .research-band:after{display:none}body .research-band p,body .research-list span{color:#b7c8be}body .research-list{border-color:#465a4b}body .contact-band{background:#1d2f26;border:1px solid #3d5940}body .contact-band .eyebrow{color:var(--mint)}body .statistics-note{color:#a1b29f}body .back-top:hover{background:var(--surface-raised);border-color:var(--border-strong)}body .opportunity-guide{background:#152023;border-color:#35463f}body .opportunity-guide .opportunity-tabs{background:#10191b;border-color:#3a4d44}body .opportunity-tabs button{color:var(--muted)}body .opportunity-tabs button:hover{color:var(--ink);background:#24352c}body .opportunity-tabs button[aria-selected=true]{background:var(--mint);color:var(--accent-ink)}body .opportunity-evidence-link{color:#bbd7a4;text-decoration-color:#667f58}body .opportunity-guide .opportunity-download{text-decoration-color:#708565}body .profile-line-icon{color:#c3dca9;background:#223428;border-color:#3e5541}body .technical-skill-chips li{color:#c0d5b5;background:#192823;border-color:#3b5041}body .profile-contact-card,body .profile-honor-card{background:var(--surface);border-color:var(--line)}body a.profile-contact-card:hover{color:var(--ink);background:#1d2d27;border-color:#668158}body .profile-contact-card .profile-line-icon,body .profile-honor-card .profile-line-icon{color:#c3dca9;background:#213329;border-color:#405942}body .profile-contact-action{color:#b0c89d}body .profile-contact-static{background:0 0}body .profile-contact-static .profile-contact-action{color:var(--muted)}body .profile-honor-year{color:#b4cca2;border-color:#465d46}body .recommendation-invitation{background:var(--surface);border-color:#3b4f43}body .recommendation-invitation aside{border-color:#3b4f43}body .case-study{--case-ink:var(--ink);--case-muted:var(--muted);--case-line:var(--line);--case-accent:var(--mint)}body .case-kicker,body .case-label,body .case-step{color:#aec799}body .case-kicker>span+span{border-color:#435747}body .case-hero-visual{background:var(--surface);border-color:#42564b;box-shadow:0 25px 60px #0004}body .case-study .case-jump{background:#0e1518f7!important}body .case-jump a>span{color:#a4b799}body .case-jump a:after{background:var(--mint)}body .case-text-link:hover,body .case-next:hover{color:var(--mint)}body .case-toolkit-group{border-top-color:#69815a}body .case-technologies li:before{color:#aecb96}body .case-discuss{background:#1d2f26;border:1px solid #405b41}body .case-discuss p{color:#b8cdb4}body .case-next-arrow{border-color:#617b57}body .case-next:hover .case-next-arrow{color:var(--mint);background:#283e2d}body .project-explorer{--explorer-ink:var(--ink);--explorer-muted:var(--muted);--explorer-paper:var(--surface);--explorer-dark:#101a1d;--explorer-green:var(--mint);--explorer-line:var(--line)}body .project-explorer :is(a,button,summary):focus-visible{outline-color:var(--mint)}body .explorer-gallery-stage{background:#101a1d;border-color:#3f5449}body .explorer-thumbnail[aria-current=true]{border-color:var(--mint);box-shadow:0 0 0 1px #718a63}body .explorer-system{background:#172326;border-color:#3b5044}body .explorer-system-block{color:var(--ink);background:#1d2b2b;border-color:#506653}body .explorer-block-index{color:#adc09f}body .explorer-system-block:hover{color:var(--ink);background:#263a2d;border-color:#9cbd7f}body .explorer-system-block[aria-current=true],body .explorer-system-block[aria-current=true]:hover{border-color:var(--mint);color:#f1f7e9;background:#2c402c}body .explorer-system-description h3{color:var(--ink)}body .explorer-system-description p,body .explorer-walkthrough p{color:var(--muted)}body .explorer-walkthrough button{background:var(--mint);border-color:var(--mint);color:var(--accent-ink)}body .explorer-walkthrough button:hover{color:var(--accent-ink);background:#d3edbf;border-color:#d3edbf}body .explorer-detail summary:hover{color:var(--mint)}body .explorer-detail-toggle{background:#1e3028;border-color:#617d56}body .explorer-detail-toggle:before,body .explorer-detail-toggle:after{background:#c4dbb3}body .explorer-video-source{color:#bddaa5}body .explorer-video-source:hover{color:#e0f1ce}}@media screen and (width<=760px){body .site-header nav{background:#131e21;border-color:#364b3e;box-shadow:0 18px 30px #0005}}@media screen and (width<=1200px){body .site-header .menu-toggle{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:7px;align-items:center;gap:12px;padding:9px 13px;font-size:14px;display:flex}body .site-header #main-nav{border-bottom:1px solid var(--line);background:#131e21;flex-direction:column;align-items:stretch;gap:8px;padding:20px 24px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 18px 30px #0005}body .site-header #main-nav.open{display:flex}body .site-header #main-nav a{padding:10px}}.nav-secondary{border-left:1px solid var(--line);gap:18px;padding-left:20px;font-size:12px;display:flex}.site-header #main-nav .nav-secondary a{color:var(--muted);font-size:12px}.site-header #main-nav .nav-secondary a.selected{color:var(--mint)}.hero-routes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:540px;display:grid}.hero-routes .button{justify-content:space-between;min-height:48px;padding:13px 18px;font-size:13px}.hero-cv-link{text-underline-offset:5px;align-items:center;min-height:44px;font-size:13px;text-decoration:underline;display:flex}.hero-now{margin-top:22px}.portfolio-hero{padding-bottom:48px}.featured-work{padding-top:34px}.cover-disclosure{color:var(--muted);max-width:800px;margin-top:20px;font-size:12px;line-height:1.7}.project-card-role{color:var(--muted);margin-top:16px;font-size:12px!important;line-height:1.6!important}.project-card-role>span{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:10px;display:block}.project-concept-label{letter-spacing:.03em;border:1px solid #688176;border-radius:4px;position:absolute;bottom:14px;left:14px;color:#d8e9da!important;background:#0d181ce8!important;padding:5px 9px!important;font:10px/1.6 monospace!important}.project-image{position:relative}.project-image img{aspect-ratio:3/2;object-fit:cover}.home-experience-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;display:grid}.home-experience-grid p{color:var(--muted);font-size:15px;line-height:1.8}.enquiry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 35px;display:grid}.enquiry-card{border:1px solid var(--line);background:var(--white);border-radius:12px;flex-direction:column;gap:12px;min-width:0;padding:26px;display:flex}.enquiry-card:hover{border-color:var(--border-strong);color:var(--ink)}.enquiry-card h3{font-size:21px;line-height:1.3}.enquiry-card p{color:var(--muted);font-size:14px;line-height:1.75}.enquiry-card span{text-underline-offset:5px;margin-top:auto;font-size:13px;text-decoration:underline}.case-ownership{border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:26px;padding:28px 0 36px;display:grid}.case-ownership h2{text-transform:uppercase;letter-spacing:.1em;color:var(--mint);margin:0 0 12px;font:11px/1.6 monospace}.case-ownership p,.case-ownership li{color:var(--muted);font-size:14px;line-height:1.8}.case-ownership ul{margin:0;padding-left:18px}.case-evidence{border-bottom:1px solid var(--line);padding:45px 0}.case-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;display:grid}.case-evidence p{color:var(--muted);font-size:15px;line-height:1.8}.case-evidence h3{margin-bottom:16px;font-size:21px}.case-evidence-links{flex-wrap:wrap;gap:12px 26px;margin-top:20px;display:flex}.case-evidence-links a{text-underline-offset:5px;align-items:center;min-height:44px;font-size:14px;text-decoration:underline;display:inline-flex}.research-current{border:1px solid var(--line);background:var(--white);border-radius:14px;margin:0 0 35px;padding:32px}.research-current h2{margin:12px 0 20px;font-size:28px}.research-current p{color:var(--muted);line-height:1.8}.research-current dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px;display:grid}.research-current dt{margin-bottom:8px;font-weight:600}.research-current dd{color:var(--muted);margin:0;line-height:1.8}.book-publisher{color:var(--muted);font-size:13px}@media (width>=1201px){.site-header #main-nav{gap:21px!important}.site-header #main-nav a{font-size:13px}.nav-secondary{gap:12px;padding-left:14px}}@media (width<=1200px){.nav-secondary{border-left:0;border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;padding:12px 0 0}.site-header #main-nav .nav-secondary a{min-height:44px;padding:10px!important}}@media (width<=760px){.home-experience-grid,.case-ownership,.case-evidence-grid,.enquiry-grid{grid-template-columns:1fr}.hero-routes{max-width:none}.portfolio-hero{padding-bottom:28px}.featured-work{padding-top:25px}.case-ownership{gap:24px}.research-current{padding:24px}.research-current dl{grid-template-columns:1fr}}@media (width<=380px){.hero-routes{grid-template-columns:1fr}.hero-cv-link{padding:0 4px}}@media print{.nav-secondary,.hero-routes,.cover-disclosure{display:none}.home-experience-grid,.case-ownership,.case-evidence-grid{display:block}.enquiry-card,.research-current{color:#111;break-inside:avoid;background:#fff}.enquiry-card p,.research-current p,.case-ownership p,.case-evidence p,.case-ownership h2{color:#333}}.contact-message{border:1px solid var(--line);background:var(--white);border-radius:14px;margin:0 0 45px;padding:32px}.contact-message h2{margin-bottom:14px;font-size:30px}.contact-message>p{color:var(--muted);margin-bottom:24px;font-size:14px;line-height:1.7}.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.contact-form-grid label{flex-direction:column;gap:9px;font-size:14px;display:flex}.contact-form-grid label>span{color:var(--muted);font-size:12px}.contact-form-grid input,.contact-form-grid select,.contact-form-grid textarea{border:1px solid var(--border-strong);background:var(--paper);width:100%;color:var(--ink);font:inherit;border-radius:6px;min-height:46px;padding:12px 14px}.contact-form-grid textarea{resize:vertical;line-height:1.7}.contact-form-full{grid-column:1/-1}.contact-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}#contact-form-status{margin-top:18px;font-size:14px;line-height:1.8}.contact-message .button:disabled{opacity:.65;cursor:wait}@media (width<=760px){.contact-form-grid{grid-template-columns:1fr}.contact-message{padding:24px}.contact-form-full{grid-column:auto}}.project-card .project-image{aspect-ratio:3/2}.project-card .project-image img{width:100%;height:100%}.portfolio-hero .hero-now{display:flex}.portfolio-hero .hero-now p{font-size:13px}@media (width<=540px){.portfolio-hero .hero-now{gap:12px;display:flex}.portfolio-hero .hero-now p{font-size:12px}}.no-js .site-header .menu-toggle{display:none!important}.no-js .site-header .header-inner{flex-wrap:wrap;padding-bottom:15px}.no-js .site-header #main-nav{flex-wrap:wrap;justify-content:flex-start;align-items:center;width:100%;box-shadow:none!important;background:0 0!important;flex-direction:row!important;padding:12px 0!important;display:flex!important;position:static!important}.no-js #contact-form{display:none}.no-js .nav-secondary{flex-wrap:wrap}
