:root{color-scheme:light;--ink:#102f43;--muted:#506775;--teal:#28747b;--line:#d8e2e7;--white:#fff;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:5px}
a:focus-visible{outline:3px solid var(--teal);outline-offset:6px;border-radius:2px}
.page{max-width:1600px;margin:auto;padding:0 5.5%}
.skip-link{position:fixed;z-index:5;top:-100px;left:16px;background:var(--ink);color:white;padding:14px 20px}
.skip-link:focus{top:16px}
.header{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.wordmark{font-size:2.4rem;letter-spacing:-.075em;font-weight:600;text-decoration:none;line-height:1}
.wordmark span{color:var(--teal)}
.contact-link{font-size:.9375rem;font-weight:500;text-decoration:none;border-bottom:1px solid var(--ink);padding:8px 0;transition:color .2s}
.contact-link:hover,.email:hover{color:var(--teal)}
.hero{position:relative;isolation:isolate;min-height:520px;display:flex;align-items:center;padding:72px 6%;background:#f0fbfd url('assets/research-background.png') center/cover no-repeat;overflow:hidden;border-radius:2px}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,rgba(241,251,253,.32),rgba(241,251,253,0))}
.hero-content{position:relative;z-index:1;max-width:730px}
.eyebrow{font-size:.8125rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;line-height:1.6;margin:0}
h1{font-size:clamp(2.5rem,4.65vw,4.8rem);font-weight:400;letter-spacing:-.052em;line-height:1.09;margin:32px 0 25px}
h1 span{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;letter-spacing:-.055em;color:var(--teal)}
.intro{font-size:1.125rem;line-height:1.7;max-width:470px;margin:0;color:var(--muted)}
.stage{display:flex;align-items:center;gap:12px;margin-top:30px}
.stage-line{width:25px;height:1px;background:var(--teal);flex-shrink:0}
.stage p{font-size:.875rem;color:var(--muted);margin:0;line-height:1.5}
.hero-note{position:absolute;right:6%;bottom:59px;border-left:1px solid #a6c7ce;padding-left:22px}
.note-label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.hero-note p{font-size:.9375rem;line-height:1.6;margin:10px 0 0}
.hero-caption{position:absolute;top:42px;right:6%;font-size:.75rem;letter-spacing:.12em;color:#506775;writing-mode:vertical-rl}
.work{padding:62px 0 65px}
.work-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:34px}
.work-context{font-size:.9375rem;line-height:1.6;color:var(--muted);margin:0}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}
.work-grid article{border-top:1px solid var(--line);padding-top:24px}
.number{font-size:.8125rem;letter-spacing:.08em;color:var(--teal)}
h2,h3{font-size:1.375rem;line-height:1.3;letter-spacing:-.025em;font-weight:500;margin:18px 0 12px}
.work-grid p{font-size:1rem;line-height:1.7;color:var(--muted);max-width:310px;margin:0}
.footer{border-top:1px solid var(--line);padding:32px 0 38px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px}
.footer-title{font-size:1rem;margin:0 0 10px;font-weight:500}
.email{font-size:.9375rem;line-height:1.6;overflow-wrap:anywhere;transition:color .2s}
.copyright{font-size:.8125rem;line-height:1.6;color:var(--muted);margin:0}
@media(min-width:1500px){.hero{min-height:590px}}
@media(max-width:1050px){.hero-note{display:none}.hero-caption{display:none}.hero-content{max-width:100%}.work-grid{gap:28px}.work-context{max-width:250px}}
@media(max-width:650px){.page{padding:0 6%}.header{min-height:88px}.wordmark{font-size:2rem}.contact-link{font-size:.875rem}.hero{padding:44px 8%;min-height:460px;background-position:60% center}.eyebrow{font-size:.75rem;letter-spacing:.085em}h1{font-size:clamp(2.1rem,7.55vw,3rem);margin:28px 0 24px}.intro{font-size:1rem;line-height:1.75}.stage{margin-top:28px}.work{padding:42px 0}.work-heading{display:block;margin-bottom:28px}.work-context{margin-top:9px;max-width:100%;font-size:.875rem}.work-grid{grid-template-columns:1fr;gap:27px}.work-grid article{padding-top:20px;display:grid;grid-template-columns:28px 1fr;column-gap:14px}.number{grid-row:1/3;padding-top:4px}h2,h3{margin:0 0 9px;font-size:1.25rem}.work-grid p{max-width:100%}.footer{display:block;padding:28px 0 30px}.copyright{margin-top:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
nav{display:flex;align-items:center;gap:30px;flex-wrap:wrap}nav a{font-size:.9375rem;line-height:1.5;text-decoration:none;padding:8px 0;border-bottom:1px solid transparent}nav a:hover,nav a[aria-current="page"]{border-color:var(--teal);color:var(--teal)}
.text-link{display:inline-block;font-size:.9375rem;font-weight:500;line-height:1.6;margin-top:28px}.work-heading .eyebrow{font-size:.8125rem;letter-spacing:.12em;margin:0}.footer a{font-size:.9375rem}
.page-intro{padding:65px 0 70px;max-width:850px}.page-intro h1{font-size:clamp(2.6rem,4.4vw,4.6rem)}.page-intro .intro{max-width:650px}.section-title{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:30px}.section-title h2{margin:0;font-size:1.625rem}.section-title p{font-size:1rem;color:var(--muted);line-height:1.7;margin:0}
.platform-row{display:grid;grid-template-columns:150px minmax(180px,1fr) minmax(0,1.65fr);gap:35px;padding:34px 0;border-top:1px solid var(--line)}.platform-row .number{padding-top:6px}.platform-row h3{margin:0;font-size:1.5rem;max-width:250px}.platform-row p{margin:0;line-height:1.75;color:var(--muted);font-size:1rem}.platform-row .research-note{margin-top:14px;font-size:.875rem;color:var(--teal)}
.development{margin-top:34px;background:#eef6f8;padding:48px;display:grid;grid-template-columns:1fr 1fr;gap:55px}.development h2{font-size:1.75rem;margin:16px 0}.development p{font-size:1rem;line-height:1.75;color:var(--muted);margin:0;max-width:420px}.development-steps{list-style:none;counter-reset:step;margin:0;padding:0}.development-steps li{counter-increment:step;border-bottom:1px solid #cbdde3;padding:15px 0 15px 35px;position:relative}.development-steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:17px;color:var(--teal);font-size:.8125rem}.development-steps li:first-child{padding-top:0}.development-steps li:first-child::before{top:2px}.development-steps li:last-child{border-bottom:0;padding-bottom:0}.development-steps strong{display:block;font-size:1.125rem;font-weight:500}.development-steps span{display:block;margin-top:6px;font-size:.9375rem;line-height:1.6;color:var(--muted)}.quiet-note{display:flex;justify-content:space-between;align-items:baseline;gap:30px;padding:36px 0 55px}.quiet-note p{max-width:610px;font-size:1rem;line-height:1.7;color:var(--muted)}.quiet-note .text-link{white-space:nowrap;margin:0}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:55px 0 75px;min-height:75vh}.contact-intro h1{font-size:clamp(3rem,5vw,5rem);margin-top:26px}.contact-note{font-size:.9375rem;line-height:1.75;color:var(--muted);max-width:330px;margin-top:30px}.form-panel{max-width:530px;width:100%;justify-self:end}.field{margin-bottom:24px}fieldset{border:0;padding:0;margin:0;min-width:0}label{display:block;font-size:.9375rem;line-height:1.5;font-weight:500;margin-bottom:9px}label span{color:var(--muted);font-weight:400}input,textarea{display:block;width:100%;background:white;border:1px solid #a9bbc5;border-radius:2px;padding:13px 14px;font:inherit;font-size:1rem;line-height:1.6;color:var(--ink)}textarea{resize:vertical;min-height:150px}input:focus,textarea:focus{outline:2px solid var(--teal);outline-offset:2px}button{font:inherit;font-size:1rem;line-height:1.5;border:1px solid var(--ink);background:var(--ink);color:white;padding:13px 26px;border-radius:2px;cursor:pointer}button:hover:not(:disabled){background:#204f67}button:focus-visible{outline:3px solid var(--teal);outline-offset:4px}button:disabled{cursor:default;opacity:.55}.form-privacy{color:var(--muted);font-size:.875rem;line-height:1.7;margin:22px 0}.form-status{font-size:.9375rem;line-height:1.7;color:var(--muted);margin:18px 0 0}.form-status[data-error="true"]{color:#9b342b}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.success-message{border-top:2px solid var(--teal);padding:28px 0}.success-message h2{font-size:1.75rem}.success-message p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.7}.secondary-button{background:white;color:var(--ink);margin-top:16px}.secondary-button:hover:not(:disabled){background:#eef6f8}
@media(max-width:1000px){.platform-row{grid-template-columns:110px minmax(150px,1fr) 1.4fr;gap:24px}.development{padding:35px;gap:35px}.contact-layout{gap:6%}}
@media(max-width:700px){nav{gap:16px}nav a{font-size:.875rem}.header{gap:16px}.page-intro{padding:35px 0 45px}.page-intro h1{font-size:clamp(2.1rem,7.2vw,3.2rem)}.section-title{display:block}.section-title h2{font-size:1.375rem;margin-bottom:12px}.platform-row{grid-template-columns:1fr;padding:27px 0;gap:14px}.platform-row h3{max-width:none;font-size:1.375rem}.platform-row .number{padding:0}.development{grid-template-columns:1fr;padding:27px 23px;gap:25px}.development h2{font-size:1.5rem}.quiet-note{display:block;padding:25px 0 40px}.quiet-note .text-link{margin-top:10px}.contact-layout{grid-template-columns:1fr;gap:35px;padding:30px 0 50px}.contact-intro h1{font-size:3.25rem;margin-bottom:20px}.contact-note{max-width:100%;margin-top:18px}.form-panel{max-width:100%}.work-heading .eyebrow{font-size:.75rem;letter-spacing:.085em}}
@media(max-width:370px){.header{align-items:flex-start;padding:22px 0}.wordmark{font-size:1.8rem}nav{gap:10px;padding-top:2px}nav a{font-size:.8125rem;padding:5px 0}}
