@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/fonts/geist-latin.woff2') format('woff2')}
:root{--paper:#f2eee6;--ink:#171614;--muted:#5d5852;--oxblood:#742d32;--copper:#a06445;--hairline:rgb(116 45 50 / 38%);--serif:'Bodoni 72',Didot,'Iowan Old Style',Baskerville,Georgia,serif;--sans:Geist,'Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 25% 20%,rgb(255 255 255 / 68%),transparent 34rem),var(--paper);color:var(--ink);font-family:var(--sans);text-rendering:optimizeLegibility}body::before{content:'';position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.14;mix-blend-mode:multiply;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='.88' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.11'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}.shell{width:min(calc(100% - 7rem),1440px);margin-inline:auto}.skip-link{position:fixed;top:1rem;left:1rem;z-index:50;transform:translateY(-160%);background:var(--ink);color:var(--paper);padding:.8rem 1rem}.skip-link:focus{transform:translateY(0)}.arrow{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.top-rule{position:absolute;top:32px;left:50%;width:min(calc(100% - 4.5rem),1512px);height:1px;background:var(--copper);transform:translateX(-50%) scaleX(0);transform-origin:left;animation:rule-in 1.1s cubic-bezier(.2,.8,.2,1) .1s forwards}.site-header{height:124px;padding-top:28px;display:flex;align-items:center;justify-content:space-between;animation:fade-in .7s .2s both}.wordmark{text-transform:uppercase;letter-spacing:.32em;white-space:nowrap;font-size:1rem;font-weight:570}nav{display:flex;gap:clamp(2rem,4vw,4.2rem)}nav a{position:relative;padding-block:.5rem;font-size:.98rem}nav a::after{content:'';position:absolute;left:0;bottom:2px;width:100%;height:1px;background:var(--copper);transform:scaleX(0);transform-origin:right;transition:transform .35s}nav a:hover::after,nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.22fr) minmax(340px,.78fr);align-items:center;min-height:calc(100svh - 124px);padding:clamp(3rem,7vh,6.5rem) 0 7.5rem;overflow:hidden}.hero-copy{position:relative;z-index:2;padding-bottom:2.5rem}.eyebrow{margin:0 0 clamp(2rem,4vh,3.1rem);color:var(--oxblood);letter-spacing:.24em;text-transform:uppercase;font-size:.78rem;font-weight:620;animation:rise-in .7s .25s both}.eyebrow span{color:var(--copper);padding-inline:.24rem}h1{max-width:940px;margin:0;font-family:var(--serif);font-size:clamp(4.65rem,8.5vw,9rem);font-weight:400;line-height:.81;letter-spacing:-.055em;animation:rise-in .85s .34s both}.period{color:var(--oxblood)}.hero-intro{max-width:650px;margin:2.7rem 0 0;color:var(--muted);font-size:clamp(1.08rem,1.45vw,1.36rem);line-height:1.55;animation:rise-in .75s .48s both}.hero-actions{display:flex;align-items:center;gap:clamp(2rem,4vw,3.25rem);margin-top:2.5rem;animation:rise-in .75s .58s both}.button,.text-link{display:inline-flex;align-items:center;justify-content:center;gap:1.5rem}.button{min-height:64px;padding:0 2rem;font-size:1rem;transition:transform .25s,background .25s}.button-dark{min-width:270px;background:var(--ink);color:var(--paper)}.button-dark:hover,.button-dark:focus-visible{background:var(--oxblood);transform:translateY(-2px)}.text-link{position:relative;padding-block:1rem;font-size:1rem}.text-link::after{content:'';position:absolute;left:0;right:0;bottom:.75rem;height:1px;background:currentColor;transition:right .25s}.text-link:hover::after{right:-12px}.hero-art{position:absolute;z-index:1;top:2%;right:-3%;bottom:6%;width:min(49vw,710px);display:grid;place-items:center;animation:art-in 1s .45s both}.mark{width:100%;height:100%;overflow:visible}.mark-arc,.mark-line,.mark-dash,.mark-hatch,.mark-small,.mark-orbit{fill:none;vector-effect:non-scaling-stroke}.mark-arc{stroke:rgb(160 100 69 / 72%);stroke-width:1px;stroke-dasharray:1310;stroke-dashoffset:1310;animation:draw 1.8s .65s forwards}.mark-line{stroke:rgb(23 22 20 / 46%);stroke-width:1px}.mark-dash{stroke:var(--copper);stroke-width:1.5px;stroke-dasharray:2 8}.mark-hatch{stroke:rgb(160 100 69 / 40%);stroke-width:1px}.mark-small,.mark-orbit{stroke:var(--copper);stroke-width:1px}.mark-semi{fill:var(--oxblood);opacity:.98}.location{position:absolute;left:1.35rem;bottom:2.4rem;margin:0;color:var(--muted);letter-spacing:.24em;font-size:.73rem;animation:fade-in .8s .8s both}.location-tick{display:inline-block;width:1px;height:15px;margin-right:1rem;background:var(--copper);vertical-align:middle}
.opening{display:grid;grid-template-columns:1fr 2.3fr;gap:4rem;padding-block:clamp(7rem,12vw,12rem);border-top:1px solid var(--hairline)}.section-label{margin:.5rem 0 0;color:var(--oxblood);letter-spacing:.19em;text-transform:uppercase;font-size:.72rem;font-weight:600}.opening-copy{max-width:940px}.opening h2,.section-heading h2,.contact h2,.experience-rows h3,.selective-grid h3,.idea-grid h3{font-family:var(--serif);font-weight:400}.opening h2{margin:0;font-size:clamp(3rem,5.4vw,6.4rem);line-height:.95;letter-spacing:-.045em}.opening-copy p{max-width:680px;margin:3rem 0 0 auto;color:var(--muted);font-size:clamp(1.12rem,1.4vw,1.35rem);line-height:1.7}.section-heading{display:grid;grid-template-columns:1fr 2.3fr;gap:4rem}.section-heading h2{max-width:1080px;margin:0;font-size:clamp(3.4rem,6.3vw,7.1rem);line-height:.9;letter-spacing:-.05em}
.lenses{padding-block:clamp(7rem,11vw,10rem);background:var(--ink);color:var(--paper)}.lenses .section-label{color:#d09975}.lens-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(5rem,9vw,8rem);border-top:1px solid rgb(242 238 230 / 25%)}.lens-grid article{min-height:330px;padding:3.4rem 2rem 2.25rem 0;border-right:1px solid rgb(242 238 230 / 18%)}.lens-grid article+article{padding-left:2rem}.lens-grid article:last-child{border-right:0}.lens-grid h3{margin:0 0 1.3rem;font-family:var(--serif);font-size:clamp(2.2rem,3vw,3.25rem);font-weight:400;letter-spacing:-.03em}.lens-grid p{max-width:280px;margin:0;color:rgb(242 238 230 / 62%);font-size:.98rem;line-height:1.7}
.experience{padding-block:clamp(8rem,13vw,13rem)}.experience-intro{display:grid;grid-template-columns:1fr 2.3fr;gap:4rem;margin-top:3.25rem}.experience-intro p{grid-column:2;max-width:740px;margin:0;color:var(--muted);font-size:clamp(1.12rem,1.4vw,1.35rem);line-height:1.7}.experience-rows{margin-top:clamp(5rem,9vw,8rem);border-top:1px solid var(--hairline)}.experience-rows article{display:grid;grid-template-columns:1.05fr 1.5fr;align-items:start;gap:2.5rem;padding:2.4rem 0 2.6rem;border-bottom:1px solid var(--hairline)}.experience-rows h3{margin:0;font-size:clamp(2rem,2.8vw,3rem);line-height:1;letter-spacing:-.03em}.experience-rows article>p{max-width:650px;margin:0;color:var(--muted);line-height:1.7}
.selective-work,.ideas{padding-block:0 clamp(8rem,13vw,13rem)}.selective-heading>div{max-width:1020px}.selective-intro{max-width:720px;margin:3rem 0 0 auto;color:var(--muted);font-size:clamp(1.12rem,1.4vw,1.35rem);line-height:1.7}.selective-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(5rem,8vw,7rem);border-block:1px solid var(--hairline)}.selective-grid article{min-height:330px;padding:3.3rem clamp(1.5rem,3vw,3rem) 2.8rem 0;border-right:1px solid var(--hairline)}.selective-grid article+article{padding-left:clamp(1.5rem,3vw,3rem)}.selective-grid article:last-child{border-right:0}.selective-grid h3{margin:0 0 1.6rem;font-size:clamp(2rem,3vw,3.2rem);line-height:1.02;letter-spacing:-.035em}.selective-grid p{max-width:340px;margin:0;color:var(--muted);line-height:1.7}.compact-heading h2{font-size:clamp(3.4rem,5.8vw,6.6rem)}.idea-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:clamp(5rem,8vw,7rem);border-block:1px solid var(--hairline);background:var(--hairline)}.idea-grid article{min-height:440px;padding:2.2rem clamp(1.5rem,3vw,3rem) 3rem;background:var(--paper)}.idea-type{margin:0 0 7rem;color:var(--oxblood);letter-spacing:.18em;text-transform:uppercase;font-size:.68rem;font-weight:600}.idea-grid h3{margin:0;font-size:clamp(2rem,3vw,3.3rem);line-height:1.03;letter-spacing:-.035em}.idea-grid h3+p{margin:1.8rem 0 0;color:var(--muted);line-height:1.7}
.contact{padding-block:clamp(7rem,12vw,12rem);background:var(--oxblood);color:var(--paper)}.contact .section-label{color:#e4b08c}.contact-inner{display:grid;grid-template-columns:1fr 2.3fr;gap:4rem}.contact-kicker{margin:.2rem 0 2.5rem;color:rgb(242 238 230 / 66%);font-size:1.1rem}.contact h2{margin:0;font-size:clamp(5rem,10vw,11rem);line-height:.8;letter-spacing:-.06em}.contact h2 span{color:#d39a73}.contact-invitation{max-width:720px;margin:3rem 0 0;color:rgb(242 238 230 / 68%);font-size:clamp(1.05rem,1.4vw,1.28rem);line-height:1.7}.contact-form{margin-top:clamp(4.5rem,8vw,7rem)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem 2rem}.contact-form label{display:grid;gap:.7rem}.contact-form label>span{color:rgb(242 238 230 / 72%);letter-spacing:.15em;text-transform:uppercase;font-size:.72rem;font-weight:600}.contact-form small{margin-left:.45rem;color:rgb(242 238 230 / 43%);font-size:.58rem;font-weight:500}.contact-form input,.contact-form textarea{width:100%;height:auto;padding:.5rem 0 1rem;border:0;border-bottom:1px solid rgb(242 238 230 / 40%);border-radius:0;background:transparent;color:var(--paper);box-shadow:none;outline:none;font:inherit;font-size:1.05rem;transition:border-color .2s}.contact-form textarea{min-height:145px;resize:vertical;line-height:1.55}.contact-form input:focus-visible,.contact-form textarea:focus-visible{border-color:var(--paper);box-shadow:none}.message-field{margin-top:2.7rem}.honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.form-footer{display:flex;align-items:center;gap:2.2rem;margin-top:2.4rem}.contact-form button{display:inline-flex;align-items:center;min-width:210px;min-height:60px;justify-content:space-between;gap:1.5rem;padding:0 1.5rem;border:1px solid var(--paper);border-radius:0;background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;transition:color .2s,background .2s,transform .2s}.contact-form button:hover:not(:disabled),.contact-form button:focus-visible{background:transparent;color:var(--paper);transform:translateY(-2px)}.contact-form button:disabled{cursor:wait;opacity:.66}.form-privacy{max-width:310px;margin:0;color:rgb(242 238 230 / 52%);font-size:.76rem;line-height:1.55}.form-feedback{min-height:1.4rem;margin:1.5rem 0 0;font-size:.88rem}.form-feedback.success{color:#f0d6be}.form-feedback.error{color:#ffd0cb}
.site-footer{background:var(--ink);color:var(--paper)}.site-footer .shell{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;min-height:150px}.site-footer p{margin:0;color:rgb(242 238 230 / 52%);letter-spacing:.1em;font-size:.72rem}.site-footer p:nth-child(2){text-align:center}.site-footer p:last-child{text-align:right}:focus-visible{outline:2px solid var(--copper);outline-offset:5px}
@keyframes rule-in{to{transform:translateX(-50%) scaleX(1)}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes rise-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes art-in{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes draw{to{stroke-dashoffset:0}}
@media(max-width:940px){.shell{width:min(calc(100% - 3rem),760px)}.site-header{height:112px}nav{gap:1.5rem}.hero{grid-template-columns:1fr;min-height:calc(100svh - 112px);padding-top:5rem}.hero-art{right:-28%;width:78vw;opacity:.17}.opening,.section-heading,.experience-intro,.contact-inner{grid-template-columns:1fr;gap:2rem}.opening-copy p{margin-left:0}.experience-intro p{grid-column:1}.lens-grid{grid-template-columns:1fr 1fr}.lens-grid article:nth-child(2){border-right:0}.lens-grid article:nth-child(n+3){border-top:1px solid rgb(242 238 230 / 18%)}.selective-grid,.idea-grid{grid-template-columns:1fr}.selective-grid article{min-height:auto;padding:3rem 0!important;border-right:0;border-bottom:1px solid var(--hairline)}.selective-grid article:last-child{border-bottom:0}.idea-grid article{min-height:auto}.idea-type{margin-bottom:4rem}}
@media(max-width:680px){.top-rule{top:20px;width:calc(100% - 2rem)}.shell{width:calc(100% - 2rem)}.site-header{height:auto;min-height:118px;padding-top:28px;flex-wrap:wrap;gap:.75rem 1rem}.wordmark{letter-spacing:.22em;font-size:.82rem}nav{order:2;width:100%;justify-content:space-between;gap:.7rem}nav a{font-size:.8rem}.hero{min-height:calc(100svh - 118px);padding:4rem 0 6rem}h1{font-size:clamp(3.6rem,18vw,6rem);line-height:.86}.eyebrow{max-width:280px;line-height:1.9}.hero-intro{max-width:94%}.hero-actions{flex-direction:column;align-items:flex-start;gap:.7rem}.button-dark{min-width:min(100%,280px)}.hero-art{top:14%;right:-67%;width:130vw}.location{left:0;bottom:1.6rem;font-size:.62rem}.opening{padding-block:6rem}.lens-grid{grid-template-columns:1fr}.lens-grid article{min-height:230px;padding:3rem 0 2rem!important;border-top:1px solid rgb(242 238 230 / 18%);border-right:0}.experience-rows article{grid-template-columns:1fr;gap:1rem}.form-grid{grid-template-columns:1fr}.form-footer{flex-direction:column;align-items:flex-start}.contact-form button{width:100%}.site-footer .shell{grid-template-columns:1fr;gap:1rem;padding-block:2.5rem}.site-footer p:nth-child(2),.site-footer p:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
