:root{--wine:#4b2e24;--wine-2:#6c4132;--cream:#f6f0e7;--paper:#fffaf3;--sand:#d7c1a6;--gold:#b78b4a;--ink:#27201c;--muted:#756a61;--line:rgba(75,46,36,.17)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.grain{position:fixed;inset:0;pointer-events:none;opacity:.17;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E")}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:absolute;top:0;width:100%;z-index:10;border-bottom:1px solid rgba(255,255,255,.24);color:#fff}.brand{display:flex;align-items:center;gap:14px}.brand-mark{font:700 18px "Playfair Display";letter-spacing:1px;border:1px solid rgba(255,255,255,.65);width:42px;height:42px;border-radius:50%;display:grid;place-items:center}.brand-name{font-family:"Playfair Display";font-size:17px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:13px}.site-header nav a{opacity:.83;transition:.25s}.site-header nav a:hover{opacity:1}.nav-contact{border:1px solid rgba(255,255,255,.55);padding:11px 18px;border-radius:999px}.menu-toggle{display:none;background:none;border:0}.hero{min-height:100vh;background:var(--wine);color:#fff;display:grid;grid-template-columns:1.25fr .78fr;gap:5vw;padding:155px 7vw 85px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(215,193,166,.2);border-radius:50%;right:-140px;top:-180px}.hero-copy{align-self:center;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:600;color:var(--gold);margin:0 0 24px}.hero h1,.section-heading h2,.publications h2,.contact-panel h2{font-family:"Playfair Display";font-weight:600;line-height:1.03;margin:0}.hero h1{font-size:clamp(54px,6.5vw,96px);letter-spacing:-.045em}.hero h1 em,.section-heading h2 em{font-weight:500;color:var(--sand)}.hero-intro{font-size:17px;line-height:1.75;max-width:650px;color:rgba(255,255,255,.72);margin:30px 0}.hero-actions{display:flex;align-items:center;gap:18px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 20px;border-radius:2px;font-size:13px;font-weight:600;transition:.25s}.button.primary{background:var(--gold);color:#fff}.button.primary:hover{background:#c69a57;transform:translateY(-2px)}.button.text{border-bottom:1px solid rgba(255,255,255,.45);border-radius:0}.hero-facts{display:flex;gap:42px;border-top:1px solid rgba(255,255,255,.15);margin-top:55px;padding-top:25px}.hero-facts div{display:flex;align-items:flex-start;gap:10px}.hero-facts strong{font:600 30px "Playfair Display";color:var(--sand)}.hero-facts span{font-size:10px;line-height:1.4;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.55)}.portrait-wrap{position:relative;align-self:center;margin-top:20px}.portrait-frame{height:min(63vh,670px);background:#baa88e;overflow:hidden;position:relative}.portrait-frame:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:saturate(.82) contrast(1.03)}.portrait-caption{font:500 19px "Playfair Display";line-height:1.25;margin:16px 0 0}.portrait-caption span{font:400 10px "DM Sans";letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55)}.orbit{position:absolute;width:135px;height:135px;right:-57px;top:-58px;animation:spin 24s linear infinite}.orbit text{font:600 10px "DM Sans";letter-spacing:2px;fill:var(--sand)}@keyframes spin{to{transform:rotate(360deg)}}.profile-note{position:absolute;right:6vw;bottom:20px;max-width:360px;border-top:1px solid rgba(255,255,255,.18);padding-top:14px}.profile-note p{font:italic 17px/1.5 "Playfair Display";margin:0 0 7px;color:rgba(255,255,255,.86)}.profile-note span{text-transform:uppercase;letter-spacing:.15em;font-size:9px;color:var(--gold)}
.research{padding:120px 7vw;background:var(--paper)}.section-heading{display:grid;grid-template-columns:.55fr 1.3fr .8fr;gap:5vw;align-items:end;margin-bottom:70px}.section-heading .eyebrow{align-self:start}.section-heading h2{font-size:clamp(40px,5vw,72px);letter-spacing:-.035em}.section-heading>p:last-child{font-size:15px;line-height:1.75;color:var(--muted);margin:0}.feature-card{background:var(--wine);color:#fff;display:grid;grid-template-columns:.3fr 1.05fr .65fr;min-height:460px;margin-bottom:24px}.feature-index{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--sand);padding:42px;border-right:1px solid rgba(255,255,255,.12)}.feature-copy{padding:65px 6vw}.project-label{font-size:10px;color:var(--gold);letter-spacing:.18em;text-transform:uppercase}.feature-copy h3{font:600 clamp(34px,4vw,58px)/1.05 "Playfair Display";letter-spacing:-.03em;margin:18px 0 26px}.feature-copy>p{line-height:1.75;color:rgba(255,255,255,.7);font-size:15px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0}.tags span{font-size:10px;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:7px 11px}.inline-link{font-size:12px;font-weight:600;border-bottom:1px solid var(--gold);padding-bottom:5px}.feature-visual{background:#cfb694;color:var(--wine);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:40px;text-align:center}.ring{position:absolute;border:1px solid rgba(75,46,36,.25);border-radius:50%}.ring-one{width:280px;height:280px}.ring-two{width:200px;height:200px}.symbol{font:italic 140px "Playfair Display";z-index:1}.feature-visual p{font:500 13px/1.5 "Playfair Display";max-width:220px;z-index:1}.research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.research-card{background:var(--paper);padding:40px 35px;min-height:270px;transition:.3s}.research-card:hover{background:#f0e5d7;transform:translateY(-5px)}.research-card>span{font-size:10px;color:var(--gold)}.research-card h3{font:600 26px/1.15 "Playfair Display";margin:45px 0 18px}.research-card p{font-size:13px;line-height:1.7;color:var(--muted)}
.publications{padding:120px 7vw 0;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.publication-intro{align-self:start}.publication-intro h2{font-size:clamp(42px,4.7vw,67px);letter-spacing:-.035em}.publication-intro>p:nth-of-type(2){font-size:14px;line-height:1.75;color:var(--muted);max-width:470px}.profile-links{display:flex;gap:25px;margin-top:35px}.profile-links a{font-size:12px;font-weight:600;border-bottom:1px solid var(--wine);padding-bottom:5px}.publication{display:grid;grid-template-columns:70px 1fr 30px;align-items:start;gap:20px;border-top:1px solid var(--line);padding:30px 0;transition:.25s}.publication:last-child{border-bottom:1px solid var(--line)}.publication:hover{padding-left:12px;color:var(--wine)}.year{font-size:10px;color:var(--gold);letter-spacing:.1em}.pub-title{font:500 22px/1.3 "Playfair Display"}.arrow{text-align:right}.contact-panel{grid-column:1/-1;background:var(--wine);color:#fff;margin:110px -7vw 0;padding:75px 7vw;display:flex;align-items:end;justify-content:space-between;gap:40px}.contact-panel h2{font-size:clamp(42px,5.2vw,74px);max-width:800px}.button.light{border:1px solid rgba(255,255,255,.5);white-space:nowrap}.button.light:hover{background:#fff;color:var(--wine)}footer{background:var(--wine);color:rgba(255,255,255,.48);border-top:1px solid rgba(255,255,255,.12);padding:25px 7vw;display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.reveal[data-delay="1"]{transition-delay:.12s}.reveal[data-delay="2"]{transition-delay:.24s}
.contact-panel.reveal{transform:none}
@media(max-width:1000px){.hero{grid-template-columns:1fr 360px;padding-left:5vw;padding-right:5vw}.hero h1{font-size:58px}.profile-note{display:none}.section-heading{grid-template-columns:1fr 1fr}.section-heading .eyebrow{grid-column:1/-1}.section-heading>p:last-child{align-self:end}.feature-card{grid-template-columns:1fr 1fr}.feature-index{grid-column:1/-1;border:0;border-bottom:1px solid rgba(255,255,255,.12);padding:25px 40px}.publications{gap:5vw}}
@media(min-width:761px){.publication-intro{padding-bottom:110px}}
@media(max-width:760px){.site-header{height:72px;padding:0 20px;position:absolute}.brand-name{font-size:14px}.site-header nav{position:fixed;inset:0;background:var(--wine);flex-direction:column;justify-content:center;font:500 26px "Playfair Display";transform:translateX(100%);transition:.35s;z-index:-1}.site-header nav.open{transform:none}.menu-toggle{display:block;z-index:2}.menu-toggle span{display:block;width:23px;height:1px;background:#fff;margin:6px}.hero{display:block;padding:120px 20px 60px}.hero h1{font-size:clamp(46px,13vw,65px)}.hero-intro{font-size:15px}.hero-facts{gap:18px;overflow:auto}.portrait-wrap{margin:70px 12px 0}.portrait-frame{height:550px}.orbit{right:-30px}.research{padding:85px 20px}.section-heading{display:block}.section-heading h2{margin-bottom:25px}.feature-card{display:block}.feature-index{padding:22px}.feature-copy{padding:42px 24px}.feature-visual{min-height:330px}.research-grid{grid-template-columns:1fr}.publications{display:block;padding:85px 20px 0}.publication-intro{position:static;margin-bottom:60px}.pub-title{font-size:18px}.publication{grid-template-columns:46px 1fr 20px}.contact-panel{margin:85px -20px 0;padding:65px 20px;display:block}.contact-panel .button{margin-top:35px;font-size:11px;white-space:normal}footer{padding:22px 20px;gap:20px}.hero-actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}.orbit{animation:none}}

.projects{padding:120px 7vw;background:var(--cream)}.projects-heading{max-width:850px;margin-bottom:55px}.projects-heading h2{font:600 clamp(40px,5vw,72px)/1.05 "Playfair Display";letter-spacing:-.035em;margin:0}.projects-heading h2 em{color:var(--wine-2);font-weight:500}.projects-heading>p:last-child{max-width:580px;font-size:15px;line-height:1.75;color:var(--muted)}.project-stories{display:grid;grid-template-columns:1fr 1fr;gap:30px}.story-card{background:var(--paper);border:1px solid var(--line)}.story-image{display:block;overflow:hidden;aspect-ratio:3/2}.story-image img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.8);transition:transform .65s ease,filter .65s ease}.story-image:hover img{transform:scale(1.035);filter:saturate(1)}.story-copy{padding:32px}.story-copy .eyebrow{font-size:10px;margin-bottom:18px}.story-copy h3,.project-row h3{font:600 30px/1.15 "Playfair Display";letter-spacing:-.02em;margin:0 0 18px}.story-copy p:not(.eyebrow),.project-row p:not(.eyebrow){font-size:14px;line-height:1.8;color:var(--muted)}.story-copy small{display:block;margin-top:26px;color:var(--muted);font-size:10px;letter-spacing:.08em}.project-list{margin-top:60px}.project-row{display:grid;grid-template-columns:60px 1fr auto;gap:30px;align-items:start;padding:35px 0;border-top:1px solid var(--line)}.project-row:last-child{border-bottom:1px solid var(--line)}.project-number{font:500 26px "Playfair Display";color:var(--gold)}.project-row .eyebrow{margin-bottom:12px;font-size:10px}.project-row p:not(.eyebrow){max-width:680px;margin-bottom:0}.project-row .inline-link{align-self:center;white-space:nowrap}
@media(max-width:1000px){.project-row{grid-template-columns:40px 1fr}.project-row .inline-link{grid-column:2;justify-self:start}}
@media(max-width:760px){.projects{padding:80px 20px}.project-stories{grid-template-columns:1fr;gap:28px}.story-copy{padding:25px}.project-row{gap:18px}.story-copy h3,.project-row h3{font-size:27px}.project-row .inline-link{white-space:normal}}
