:root{--paper:#f3f2ec;--ink:#242720;--muted:#62665b;--line:#d3d5c9;--olive:#6d7652;--dark:#242820;--light:#f0f0e7;--gutter:clamp(24px,4.5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid var(--olive);outline-offset:7px}::selection{background:#d6dbc2}p{margin:0 0 1.5em}h1,h2,h3{margin:0;font-weight:400}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.065em}img{max-width:100%;height:auto}.skip-link{position:fixed;top:-100px;left:20px;z-index:10;background:var(--ink);color:white;padding:15px}.skip-link:focus{top:15px}.header{margin:0 var(--gutter);min-height:120px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{width:100px;display:block;flex-shrink:0}.brand img{display:block}.header nav{display:flex;gap:clamp(20px,3vw,50px);font-size:13px}.header nav a,.header-contact{padding:10px 0}.header a:hover{color:var(--olive)}.header-contact{font-size:14px;display:flex;gap:30px}.hero{padding:35px var(--gutter) 0}.hero-kicker,.hero-foot,.section-label,.eyebrow{font-size:10px;letter-spacing:.1em;text-transform:uppercase}.hero-kicker{display:flex;justify-content:space-between;color:var(--muted)}h1{font-size:clamp(54px,7.9vw,150px);letter-spacing:-.072em;line-height:1.06;margin:73px 0 57px}.hero-last{display:flex;align-items:center;gap:.22em}h1 em{color:var(--olive)}.focus-mark{width:.62em;height:.62em;border:1px solid #929981;border-radius:50%;margin-left:auto;position:relative;flex-shrink:0}.focus-mark:before,.focus-mark:after{content:'';position:absolute;border:1px solid #929981;border-radius:50%;inset:10%}.focus-mark:after{inset:23%}.focus-mark i{position:absolute;width:7px;height:7px;background:var(--olive);border-radius:50%;top:15%;right:9%;outline:7px solid var(--paper)}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:end}.intro{max-width:600px;font-size:16px;line-height:1.65}.intro p:first-child{font-size:20px;line-height:1.5}.intro p:last-child{margin:0}.explore{display:flex;align-items:center;gap:18px;font-size:12px;width:fit-content}.circle-arrow{display:grid;place-items:center;border:1px solid var(--line);width:49px;height:49px;border-radius:50%;font-size:21px;transition:background .2s}.explore:hover .circle-arrow{background:#e0e4d4}.hero-foot{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:65px 0 20px;margin-top:12px;color:var(--muted)}.section{padding:30px var(--gutter) 100px;scroll-margin-top:15px}.section-label{display:flex;justify-content:space-between;align-items:center;color:var(--muted);margin-bottom:72px}.small-cross{font-size:24px;font-weight:300;line-height:1}.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%}h2{font-size:clamp(48px,5.6vw,98px);line-height:1.04;letter-spacing:-.065em}h2 em{color:var(--olive)}.body-copy{max-width:610px;font-size:16px;line-height:1.8}.body-copy .lead{font-size:23px;line-height:1.5;letter-spacing:-.025em}.body-copy p:last-child{margin-bottom:0}.pull-line{font-size:26px;line-height:1.45;letter-spacing:-.03em;border-top:1px solid var(--line);padding-top:30px;margin-top:35px}.perspective{padding-top:30px;padding-bottom:120px}.cases{background:#e8eadf;padding-top:30px}.cases .section-label{border-top:1px solid #cbd0be;padding-top:25px}.cases-heading{margin-bottom:70px}.case-row{display:grid;grid-template-columns:10% 1fr auto;gap:3%;align-items:center;border-top:1px solid #c6ccb8;padding:33px 0}.case-row:last-child{border-bottom:1px solid #c6ccb8}.case-number{font-family:Georgia,serif;font-size:40px;font-style:italic;color:var(--olive);align-self:start}.eyebrow{color:var(--muted)}.case-row h3{font-size:clamp(20px,2.25vw,34px);letter-spacing:-.035em;line-height:1.25;margin:12px 0}.case-row p{font-size:14px;color:var(--muted);margin:0;line-height:1.6}.case-status{font-size:11px;display:flex;align-items:center;gap:8px;color:#586044}.case-status>span{width:5px;height:5px;border-radius:50%;background:#798462}.work{background:var(--dark);color:var(--light);padding-top:36px;padding-bottom:105px}.work .section-label{color:#b4b9a7}.work h2 em{color:#b4bf97}.work .body-copy{color:#c9cdbf}.work .lead{color:var(--light)}.work-note{margin-top:110px;display:flex;align-items:center;gap:20px;color:#a7b095;font-size:11px;line-height:1.6}.work-orbit{width:42px;height:42px;border:1px solid #788167;border-radius:50%;display:block;position:relative}.work-orbit:after{content:'';position:absolute;inset:8px;border:1px solid #788167;border-radius:50%}.services{list-style:none;padding:0;margin:30px 0}.services li{padding:15px 0 15px 24px;border-top:1px solid #4b5143;position:relative;font-size:15px;line-height:1.6}.services li:before{content:'↗';position:absolute;left:0;color:#adb892}.services li:last-child{border-bottom:1px solid #4b5143}.contact{padding-top:35px;padding-bottom:100px}.contact-heading{display:flex;justify-content:space-between;align-items:center;margin:10px 0 65px}.contact h2{font-size:clamp(85px,13.8vw,240px);letter-spacing:-.075em}.contact-arrow{font-size:clamp(65px,10vw,180px);color:var(--olive);line-height:1;font-family:Arial,sans-serif}.contact-invitation{max-width:390px;font-size:20px;line-height:1.6;letter-spacing:-.02em}.contact-links a{display:flex;justify-content:space-between;gap:15px;padding:19px 0;border-bottom:1px solid var(--line);font-size:clamp(16px,2vw,29px);letter-spacing:-.04em}.contact-links a:first-child{border-top:1px solid var(--line)}.contact-links a:hover{color:var(--olive)}.contact-links a span{transition:transform .2s}.contact-links a:hover span{transform:translate(3px,-3px)}footer{border-top:1px solid var(--line);margin:0 var(--gutter);padding:25px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:30px;color:var(--muted);font-size:11px;line-height:1.6}footer p{margin:0}footer a:hover{color:var(--ink)}.back-top{font-size:22px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}
@media(min-width:1800px){body{max-width:2100px;margin:auto}}
@media(max-width:900px){.header{min-height:100px}.header nav{gap:20px;font-size:11px}.header-contact{font-size:12px;gap:10px}.brand{width:80px}h1{margin-top:65px}.hero-bottom,.editorial-grid{gap:6%}.intro{font-size:14px}.intro p:first-child{font-size:18px}.body-copy{font-size:15px}.body-copy .lead{font-size:20px}.section-label{margin-bottom:50px}.work h2{font-size:clamp(35px,5.3vw,60px)}.contact-invitation{font-size:18px}.case-row{grid-template-columns:8% 1fr auto}footer{font-size:10px;gap:20px}}
@media(max-width:600px){.header{min-height:95px;flex-wrap:wrap;gap:0;padding:15px 0}.brand{width:65px}.header-contact{margin-left:auto;font-size:13px}.header nav{order:3;width:100%;justify-content:space-between;padding-top:17px;font-size:10px}.hero{padding-top:24px}.hero-kicker{font-size:8px;gap:20px}.hero-kicker span:last-child{text-align:right}h1{font-size:clamp(37px,8.7vw,53px);margin:57px 0 36px;line-height:1.15}.hero-last{gap:.18em}.focus-mark{width:.55em;height:.55em}.focus-mark i{width:4px;height:4px;outline-width:3px}.hero-bottom{display:flex;flex-direction:column-reverse;align-items:start;gap:27px}.intro{font-size:15px;line-height:1.75}.intro p:first-child{font-size:19px}.hero-foot{font-size:8px;padding-top:37px}.section{padding-bottom:65px}.section-label{font-size:9px;margin-bottom:37px}.editorial-grid{grid-template-columns:1fr;gap:32px}h2{font-size:54px}.perspective h2 br{display:none}.perspective h2{max-width:330px}.perspective h2 em:before{content:' '}.body-copy{font-size:15px;line-height:1.85}.body-copy .lead{font-size:21px}.pull-line{font-size:24px}.cases-heading{margin-bottom:40px}.case-row{grid-template-columns:30px 1fr;gap:13px;padding:25px 0}.case-number{font-size:26px}.case-row h3{font-size:23px}.case-status{grid-column:2;margin-top:5px}.eyebrow{font-size:9px}.work h2{font-size:54px}.work-note{display:none}.services li{font-size:14px}.contact-heading{margin-bottom:35px}.contact h2{font-size:clamp(70px,17vw,100px)}.contact-arrow{font-size:60px}.contact-invitation{font-size:19px;max-width:330px;margin:0}.contact-links a{font-size:clamp(17px,5.2vw,26px)}footer{flex-wrap:wrap;gap:18px;padding-bottom:25px;font-size:10px}footer p{width:100%;max-width:300px}footer .back-top{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.reveal{opacity:1;transform:none}}
/* Keep editorial columns within narrow mobile viewports. */
.editorial-grid>*{min-width:0}
@media(max-width:600px){.work h2{font-size:clamp(40px,12vw,54px)}.perspective h2 em:before{content:none}}
@media(max-width:360px){h1{font-size:8.7vw}}
/* Published cases and the upcoming essay. */
.case-row{position:relative}
.case-row h3 a:after{content:'';position:absolute;inset:0}
.case-row:has(a):hover h3,.case-row:has(a):hover .case-open{color:var(--olive)}
.case-row:focus-within{outline:2px solid var(--olive);outline-offset:5px}
.case-row h3 a:focus-visible{outline:none}
.case-row p{max-width:780px}
.case-open{font-size:28px;color:var(--olive);padding:0 10px}
.case-announcement{margin-top:40px;display:grid;grid-template-columns:13% 1fr;gap:0;align-items:baseline}
.case-announcement p{margin:0;max-width:720px;font-size:20px;line-height:1.5;letter-spacing:-.025em}
@media(max-width:600px){.case-row .case-open{display:none}.case-announcement{grid-template-columns:1fr;gap:12px;margin-top:30px}.case-announcement p{font-size:19px}}
