 :root {
  --paper:#f4f0e8; --ink:#272722; --muted:#76736b; --line:#d7d1c6;
  --sage:#d9e3d3; --terracotta:#d99a80; --blue:#cbd9df; --serif:"DM Serif Display", Georgia, serif;
  --sans:"DM Sans", Arial, sans-serif; --mono:"DM Mono", monospace;
}
*{box-sizing:border-box} html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none} button{font:inherit;color:inherit}
.announcement{min-height:30px;padding:8px 4.4%;display:flex;justify-content:space-between;gap:12px;background:var(--ink);color:var(--paper);font:9px var(--mono);letter-spacing:.08em}
.status-dot{display:inline-block;width:6px;height:6px;margin-left:5px;border-radius:50%;background:#b5d5a8}
.site-header{height:78px;padding:0 4.4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(244,240,232,.94);backdrop-filter:blur(14px);z-index:10}
.wordmark{font-weight:700;font-size:16px;letter-spacing:-.06em}.wordmark span{font-size:9px;vertical-align:top;margin-left:3px}
.nav{display:flex;gap:32px}.nav a{font:10px var(--mono);letter-spacing:.04em}.nav sup{color:var(--muted);font-size:8px}
.menu-toggle{display:none;border:0;background:none;font:10px var(--mono)}
.section-wrap{padding-left:8.2%;padding-right:8.2%}
.hero{padding-top:26px;padding-bottom:72px}
.hero-meta,.hero-caption,.art-topline,.art-bottomline{display:flex;justify-content:space-between;gap:15px;font:9px var(--mono);letter-spacing:.06em;color:var(--muted)}
.hero h1{font:clamp(76px,13.2vw,190px)/.78 var(--serif);letter-spacing:-.075em;margin:82px 0 38px;max-width:1000px}
h1 em,h2 em,.section-heading h2 em,.statement p em,.contact h2 em{font-weight:400}
.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:48px}
.hero-description{max-width:410px;font-size:clamp(16px,1.8vw,22px);line-height:1.55;margin:0}.hero-description strong{font-weight:500}
.round-link{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--ink);border-radius:50%;font-size:20px;transition:background .25s,color .25s}.round-link:hover{background:var(--ink);color:var(--paper)}
.hero-art{background:#d9e3d3;min-height:350px;padding:15px 18px;position:relative;overflow:hidden}
.art-topline,.art-bottomline{font-size:8px;color:#454c40;position:relative;z-index:2}
.hero-strip{height:300px;margin:14px 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.hero-strip a{overflow:hidden}.hero-strip img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}.hero-strip a:hover img{transform:scale(1.04)}
.hero-caption{margin-top:14px;font-size:8px}
.work{padding-top:62px;padding-bottom:80px}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:45px}
.eyebrow{font:9px var(--mono);letter-spacing:.09em;color:var(--muted)}
.section-heading h2,.about h2{font:clamp(43px,6.6vw,83px)/.92 var(--serif);letter-spacing:-.055em;margin:24px 0 0}
.section-heading>p{max-width:280px;font-size:13px;line-height:1.7;color:#66635c;margin:0 0 6px}
.index-head{display:flex;justify-content:space-between;padding:15px 0;border-top:1px solid var(--line);font:9px var(--mono);letter-spacing:.06em;color:var(--muted)}
.project-index ol{list-style:none;margin:0 0 40px;padding:0;columns:2;column-gap:40px;border-top:1px solid var(--line)}.project-index li{break-inside:avoid;border-bottom:1px solid var(--line)}
.project-index a{display:flex;align-items:baseline;gap:14px;padding:13px 0;font-size:15px;transition:padding .2s}.project-index a:hover{padding-left:6px}.project-index span{font:9px var(--mono);color:var(--muted)}.project-index em{margin-left:auto;font:8px var(--mono);letter-spacing:.06em;color:var(--muted);text-align:right}
.story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);gap:6%;padding:56px 0;border-top:1px solid var(--line)}
.story-head{position:sticky;top:110px;align-self:start}.story h3{font:clamp(32px,3.6vw,46px)/.98 var(--serif);font-weight:400;letter-spacing:-.045em;margin:18px 0}.story-head p{font-size:13px;line-height:1.8;color:#66635c;margin:0}
.story-facts{margin:26px 0 0;border-top:1px solid var(--line)}.story-facts div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:9px 0;border-bottom:1px solid var(--line)}.story-facts dt{font:8px var(--mono);letter-spacing:.06em;color:var(--muted)}.story-facts dd{margin:0;font-size:12px;text-align:right}
/* Masonry: images flow down two columns. A .wide item spans both; max-height keeps tall posters inside the screen. */
.story-media{columns:2;column-gap:14px}.story-media>*{display:block;width:100%;height:auto;margin-bottom:14px;break-inside:avoid;background:#e8e4db}.story-media>.wide{column-span:all;max-height:88vh;object-fit:contain;background:none}
.statement{padding-top:74px;padding-bottom:80px;background:#e8e4db;position:relative}.statement p{font:clamp(36px,6vw,78px)/1.02 var(--serif);letter-spacing:-.045em;margin:32px 0 0}.statement-index{position:absolute;right:8.2%;bottom:25px;font:8px var(--mono);color:var(--muted)}
.about{padding-top:90px;padding-bottom:95px;display:grid;grid-template-columns:.75fr 1.25fr;gap:9%}.about-left{position:relative;min-height:300px}.about-monogram{font:clamp(120px,18vw,230px)/.8 var(--serif);letter-spacing:-.12em;margin-top:68px;color:#a0ad95}.about-monogram span{font-style:italic;color:#d99a80}.about-side-note{font:8px/1.6 var(--mono);letter-spacing:.07em;color:var(--muted);position:absolute;left:6px;bottom:0}
.about h2{font-size:clamp(38px,4.8vw,62px);margin:0 0 27px}.about-right p{max-width:520px;font-size:13px;line-height:1.8;color:#66635c}.about-right .about-lead{font-size:17px;line-height:1.55;color:var(--ink);max-width:470px}
.experience{max-width:520px;margin:30px 0 0;border-top:1px solid var(--line)}.experience div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}.experience dt{font-size:13px}.experience dd{margin:0;font:8px var(--mono);letter-spacing:.06em;color:var(--muted);text-align:right}
.skills{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 30px}.skills span{font:8px var(--mono);border:1px solid var(--line);padding:9px 10px;border-radius:30px}.text-link{display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:9px;font:9px var(--mono);letter-spacing:.06em}
.availability{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:24px;padding-bottom:24px;display:grid;grid-template-columns:1fr 2fr auto;align-items:center;gap:20px}.availability-list{display:flex;gap:10px;flex-wrap:wrap}.availability-list span{font:10px var(--mono);border:1px solid var(--line);border-radius:30px;padding:10px 13px}.availability-mark{font-size:28px;color:#9d503e}
.contact{background:var(--ink);color:var(--paper);padding:75px 0 35px}.contact .eyebrow{color:#b9b4aa}.contact h2{font:clamp(55px,9.5vw,125px)/.82 var(--serif);letter-spacing:-.07em;margin:48px 0 48px}.contact h2 em{color:#d9e3d3}
.contact-email{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:660px;border-bottom:1px solid #65635b;padding-bottom:15px;font:clamp(18px,3vw,31px) var(--serif)}.contact-email span{font:22px var(--sans);transition:transform .2s}.contact-email:hover span{transform:translate(4px,-4px)}
.contact-bottom{display:flex;justify-content:space-between;gap:25px;align-items:flex-end;margin-top:55px}.contact-bottom p{font-size:11px;color:#c2beb5;margin:0}.contact-bottom div{display:flex;gap:22px}.contact-bottom a{font:9px var(--mono)}
.footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:22px;padding-bottom:22px}.footer>span,.footer>a:last-child{font:8px var(--mono);color:var(--muted)}
@media(min-width:1200px){.section-wrap{padding-left:max(8.2%,calc((100vw - 1120px)/2));padding-right:max(8.2%,calc((100vw - 1120px)/2))}.hero h1{margin-top:100px}}
@media(max-width:900px){.story{grid-template-columns:1fr;gap:28px}.story-head{position:static}}
@media(max-width:700px){
 .announcement{font-size:7px;padding-left:5%;padding-right:5%}.site-header{height:66px;padding:0 5%}.menu-toggle{display:block}.nav{display:none;position:absolute;top:65px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:22px 5%;flex-direction:column;gap:22px}.nav.open{display:flex}.section-wrap{padding-left:5%;padding-right:5%}
 .hero{padding-top:20px;padding-bottom:52px}.hero-meta{font-size:7px}.hero-meta span:last-child{text-align:right}.hero h1{font-size:clamp(72px,18vw,120px);margin:70px 0 30px}.hero-bottom{margin-bottom:30px}.hero-description{font-size:16px;max-width:330px}.round-link{flex:0 0 42px;width:42px;height:42px}.hero-art{min-height:270px;padding:12px}.hero-strip{height:230px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.hero-strip a:nth-child(n+4){display:none}.art-topline,.art-bottomline{font-size:6px}.hero-caption{font-size:6px}
 .work{padding-top:48px;padding-bottom:55px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:58px}.section-heading>p{margin-top:20px}.project-index ol{columns:1}.project-index a{font-size:14px}.story{padding:40px 0}.story-media{column-gap:10px}.story-media>*{margin-bottom:10px}
 .statement{padding-top:52px;padding-bottom:65px}.statement p{font-size:clamp(37px,9vw,57px)}.statement-index{right:5%;font-size:7px}.about{padding-top:60px;padding-bottom:60px;grid-template-columns:1fr;gap:35px}.about-left{min-height:175px}.about-monogram{font-size:140px;margin-top:45px}.about-side-note{left:auto;right:5px;bottom:8px}.about h2{font-size:clamp(40px,10vw,57px)}.availability{grid-template-columns:1fr auto;gap:18px}.availability-list{grid-column:1 / -1;grid-row:2}.availability-mark{grid-column:2;grid-row:1}
 .contact{padding-top:55px}.contact h2{font-size:clamp(54px,13vw,82px);margin:45px 0}.contact-bottom{display:block;margin-top:35px}.contact-bottom div{margin-top:24px}.footer{flex-wrap:wrap}.footer>span{order:3;width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
