*{box-sizing:border-box}html{height:100%}body{margin:0;background:#fff;color:#202020;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible{outline:1px solid;outline-offset:6px}header,main,footer{width:calc(100% - 112px);max-width:1200px;margin:0 auto}header{padding:48px 0;display:flex;justify-content:space-between;align-items:center;gap:30px}.brand{display:block;width:164px;flex-shrink:0}.brand img{width:100%;height:auto;display:block}nav{display:flex;gap:30px;font-size:13px}nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}.home{min-height:100svh;display:flex;flex-direction:column}.home main{flex:1;display:flex;align-items:center;padding:65px 0 110px}.statement{max-width:760px}.statement h1,.statement p{font-size:clamp(23px,2.3vw,31px);font-weight:400;line-height:1.5;letter-spacing:-.45px;margin:0}.statement p{margin-top:25px;color:#696969}footer{padding:26px 0 35px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#777}footer div{display:flex;gap:28px}.about-hero{padding:65px 0 45px}h1{font-size:38px;font-weight:400;letter-spacing:-1px;margin:0}.eyebrow{font-size:12px;color:#777}.about-body{display:grid;grid-template-columns:1fr 3fr;gap:50px;padding:30px 0 70px;border-top:1px solid #e5e5e5}.about-body p{font-size:20px;line-height:1.6;margin:0 0 20px;max-width:720px}.press{padding:30px 0 65px;border-top:1px solid #e5e5e5}.press h2{font-size:14px;font-weight:400;margin:0 0 20px}.press-row{display:grid;grid-template-columns:200px 1fr 20px;gap:30px;border-bottom:1px solid #eee;padding:24px 0}.press-source{font-size:12px;color:#777;line-height:1.6}.press-title{font-size:18px;line-height:1.5}.join{padding:30px 0 55px;border-top:1px solid #e5e5e5;display:flex;justify-content:space-between;align-items:center;gap:30px}.join h2{font-weight:400;font-size:22px;margin:0}.text-link{font-size:13px}.text-link span{margin-left:20px}@media(max-width:650px){header,main,footer{width:calc(100% - 48px)}header{padding:30px 0;align-items:flex-start}.brand{width:125px}nav{gap:17px;font-size:11px;flex-wrap:wrap;justify-content:flex-end}.home main{padding:70px 0 100px}.statement h1,.statement p{font-size:24px}.statement p{margin-top:24px}footer{flex-direction:column;padding-bottom:25px}footer div{gap:24px}.about-hero{padding:45px 0 35px}h1{font-size:32px}.about-body{grid-template-columns:1fr;gap:20px;padding-bottom:40px}.about-body p{font-size:18px}.press-row{grid-template-columns:1fr 18px;gap:8px}.press-source{grid-column:1/-1}.press-title{font-size:17px}.join{display:block}.join h2{margin-bottom:20px}}
.about-body h2.eyebrow{font-weight:400;margin:0;line-height:1.6}

/* Shared footer and publication index */
footer{border-top:1px solid #e5e5e5;align-items:flex-start;line-height:1.7}footer .footer-address{display:flex;flex-direction:column;gap:8px}footer address{font-style:normal}footer .footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px 24px}.statement h1{color:#202020}.statement p{font-size:clamp(20px,2vw,27px);max-width:750px}.press-row{grid-template-columns:110px 180px minmax(0,1fr) 18px;gap:24px;align-items:baseline}.press-row time{font-size:12px;color:#777;font-variant-numeric:tabular-nums;white-space:nowrap}.press-row:hover{color:#1e7560;text-decoration:none}.press-row:hover .press-title{text-decoration:underline;text-underline-offset:4px}.legal-content{max-width:850px;padding:55px 0 80px;font-size:15px;line-height:1.75;overflow-wrap:anywhere}.legal-content h1{margin-bottom:35px}.legal-content h2{font-size:23px;margin:36px 0 14px;font-weight:400}.legal-content h3{font-size:18px;margin:28px 0 12px}.legal-content a{text-decoration:underline}.legal-content table{display:block;overflow-x:auto;border-collapse:collapse;font-size:13px}.legal-content td,.legal-content th{padding:12px;border:1px solid #ddd;text-align:left}.legal-content li{margin-bottom:8px}
@media(max-width:800px){.press-row{grid-template-columns:100px 1fr 18px;gap:8px 18px}.press-source{grid-column:2}.press-title{grid-column:1/3;grid-row:2}.press-row>span:last-child{grid-column:3;grid-row:2}footer .footer-links{justify-content:flex-start}}@media(max-width:650px){.press-row{grid-template-columns:100px 1fr 18px}.press-source{grid-column:2}.footer-links{max-width:320px}.legal-content{padding-top:35px}.statement p{font-size:21px}}

/* Homepage typography and Careers */
.statement{max-width:100%;width:100%}.statement h1{font-size:clamp(20px,2.25vw,29px);line-height:1.5;letter-spacing:-.45px}.statement p{font-size:clamp(18px,1.9vw,24px);max-width:850px;line-height:1.55}.careers-intro{max-width:800px;padding:0 0 55px}.careers-intro p{font-size:20px;line-height:1.65;margin:0}.roles{border-top:1px solid #e5e5e5;padding:30px 0 100px}.roles h2{font-size:14px;font-weight:400;margin:0 0 20px}.role-row{display:grid;grid-template-columns:1fr 150px 20px;gap:25px;align-items:center;width:100%;padding:25px 0;border:0;border-bottom:1px solid #e5e5e5;background:none;color:inherit;text-align:left;font:inherit;font-size:19px;cursor:pointer}.role-row:hover{color:#1e7560}.role-location{font-size:13px;color:#696969}button:focus-visible{outline:2px solid #1e7560;outline-offset:5px}.dialog-open{overflow:hidden}dialog{border:1px solid #e5e5e5;border-radius:6px;padding:0;width:min(760px,calc(100% - 40px));max-height:85svh;overflow:auto;color:#202020;background:#fff;box-shadow:0 20px 70px #0002}dialog::backdrop{background:#0006}.dialog-toolbar{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-bottom:1px solid #eee;background:#fff;font-size:12px;color:#777}.close-dialog{border:0;background:none;font-size:28px;padding:0 6px;cursor:pointer;color:#555}.dialog-content{padding:32px 48px 45px}.dialog-content h2{font-size:30px;font-weight:400;line-height:1.25;margin:14px 0 28px;letter-spacing:-.5px}.dialog-content h3{font-size:18px;font-weight:400;margin:30px 0 12px}.dialog-content p{font-size:16px;line-height:1.7}.dialog-content .eyebrow{font-size:12px}.dialog-content a{color:#1e7560;text-decoration:underline;text-underline-offset:3px}@media(min-width:1000px){.statement h1{white-space:nowrap}}@media(max-width:650px){header{gap:18px}nav{gap:12px}.brand{width:115px}.statement h1{font-size:23px}.statement p{font-size:20px}.careers-intro p{font-size:18px}.role-row{grid-template-columns:1fr 18px;gap:12px}.role-location{grid-column:1;grid-row:2}.role-row>span:last-child{grid-column:2;grid-row:1}.dialog-content{padding:25px}.dialog-content h2{font-size:26px}}

/* Consistent type hierarchy across pages and dialogs. */
:root{--type-title:28px;--type-body:18px;--type-label:13px;--type-small:12px}
h1,.dialog-content h2{font-size:var(--type-title);font-weight:400;line-height:1.35;letter-spacing:-.5px}
.statement h1{font-size:clamp(22px,2.25vw,var(--type-title));line-height:1.5}
.statement p{font-size:20px;line-height:1.65}
.about-body p,.careers-intro p,.dialog-content p{font-size:var(--type-body);line-height:1.65;letter-spacing:normal}
.press-title,.role-row,.dialog-content h3,.legal-content h3{font-size:var(--type-body);line-height:1.5}
.eyebrow,.about-body .eyebrow,.press h2,.roles h2,.role-location,nav{font-size:var(--type-label);font-weight:400;line-height:1.6}
.press-source,.press-row time,.dialog-toolbar,.dialog-content .eyebrow,footer{font-size:var(--type-small);line-height:1.65}
.legal-content{font-size:16px}.legal-content h2{font-size:22px}
@media(max-width:650px){:root{--type-title:25px;--type-body:17px;--type-label:12px}.statement h1{font-size:23px}.statement p{font-size:18px}.dialog-content h2{font-size:var(--type-title)}nav{font-size:12px}}

/* Optional quantitative homepage study. Decorative, not portfolio data. */
.grid-page main{position:relative;isolation:isolate}
.grid-page main::before{content:"";position:absolute;z-index:-1;pointer-events:none;right:-35px;top:50%;transform:translateY(-43%);width:min(80vw,1000px);height:640px;background:url('/development-grid.svg') center/contain no-repeat;opacity:.8;mask-image:linear-gradient(to right,transparent 0%,#000 55%)}
.home .statement{position:relative;z-index:1}
@media(max-width:650px){.grid-page main::before{right:-24px;width:100vw;height:480px;opacity:.55;top:60%}}

.grid-page:not(.home) main::before{top:340px;transform:translateY(-43%)}
