:root{--paper:#f4efe4;--ink:#18362c;--red:#d94b35;--yellow:#efbd3f;--line:rgba(24,54,44,.23)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,sans-serif}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-4rem;z-index:20;background:var(--ink);color:#fff;padding:.8rem 1rem}.skip-link:focus{top:1rem}.site-header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line)}.wordmark{font:600 1.55rem/1 Fraunces,serif;text-decoration:none}.wordmark span{color:var(--red)}nav{display:flex;gap:2.2rem}nav a,footer a{text-decoration:none;font-size:.76rem;text-transform:uppercase;letter-spacing:.16em;font-weight:600}nav a:hover,nav a:focus-visible{color:var(--red)}.hero{min-height:calc(100vh - 90px);display:grid;grid-template-columns:1fr minmax(320px,43vw);position:relative;align-items:center;padding:clamp(3rem,7vw,7rem) 8vw;overflow:hidden}.hero-copy{position:relative;z-index:2;margin-right:-6vw}.eyebrow,.section-number,.project-type{text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;font-weight:600}.eyebrow span{color:var(--red);margin-right:.9rem}h1,h2,h3{font-family:Fraunces,serif;font-weight:500;margin:0;letter-spacing:-.045em}h1{font-size:clamp(5rem,11vw,10.5rem);line-height:.72;margin:clamp(2rem,5vh,4rem) 0}h1 em,h2 em{color:var(--red);font-weight:500}.intro{max-width:29rem;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.55}.text-link{display:inline-flex;gap:.8rem;align-items:center;margin-top:1.5rem;font-size:.77rem;font-weight:600;text-transform:uppercase;letter-spacing:.13em;text-decoration:none;border-bottom:1px solid;padding-bottom:.4rem}.text-link span{font-size:1.2rem;color:var(--red)}.portrait-wrap{margin:0;position:relative}.portrait-frame{aspect-ratio:3/4;overflow:hidden;border-radius:50% 50% 2px 2px;outline:1px solid var(--line);outline-offset:10px}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.88) contrast(.98)}figcaption{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;display:flex;justify-content:space-between;margin-top:1.3rem}figcaption span{color:var(--red)}.side-note{position:absolute;right:2.4vw;top:50%;margin:0;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.16em;font-size:.59rem}.side-note span{color:var(--red);padding:.6rem 0}.about{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(5rem,11vw,10rem) 8vw;display:grid;grid-template-columns:1fr 2.4fr;gap:4rem;background:var(--ink);color:var(--paper)}.about .section-number{color:var(--yellow)}h2{font-size:clamp(3.7rem,7.5vw,7.5rem);line-height:.92;margin-bottom:3rem}.about div p{max-width:43rem;font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.65}.about div p:last-child{opacity:.68}.projects{padding:clamp(5rem,9vw,9rem) 5vw}.projects-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:4rem}.projects-heading h2{font-size:clamp(4rem,8vw,8rem)}.project-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:1.2rem}.project-card{min-height:600px;padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--ink);text-decoration:none;transition:transform .25s,box-shadow .25s}.featured{background:var(--red);color:var(--paper)}a.featured:hover,a.featured:focus-visible{transform:translateY(-6px);box-shadow:0 12px 0 var(--yellow)}.upcoming{background:#e7dfce}.project-topline{display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.12em;font-size:.62rem}.plate{margin:auto;width:min(70%,340px);aspect-ratio:1;border:1px solid currentColor;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font:500 clamp(2rem,4vw,4rem)/.9 "Fraunces",serif;box-shadow:inset 0 0 0 14px var(--red),inset 0 0 0 15px currentColor;transform:rotate(-6deg)}.plate i{font-size:.48em;color:var(--yellow)}.project-copy{display:flex;justify-content:space-between;align-items:end;border-top:1px solid currentColor;padding-top:1.2rem;gap:2rem}.project-copy h3{font-size:clamp(2rem,3vw,3.5rem)}.project-copy p:last-child{font-size:.76rem;line-height:1.5;text-align:right}.project-type{margin:0 0 .6rem}.place-setting{margin:auto;position:relative;width:180px;height:180px;border:1px solid var(--ink);border-radius:50%}.place-setting:before,.place-setting:after{content:"";position:absolute;top:-1.5rem;height:calc(100% + 3rem);width:1px;background:var(--ink)}.place-setting:before{left:-2.5rem}.place-setting:after{right:-2.5rem}.place-setting span{position:absolute;width:5px;height:28px;background:var(--red);right:-2.7rem;top:-1.7rem}.place-setting i{position:absolute;width:40px;height:1px;background:var(--ink);bottom:-2rem;left:70px}footer{background:var(--yellow);padding:4rem 5vw;display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--ink)}footer p{font-size:.72rem;line-height:1.6;text-transform:uppercase;letter-spacing:.12em;margin:0}.inverse span{color:var(--ink)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}.featured:focus-visible{outline-color:var(--ink)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.project-card{transition:none}}@media(max-width:760px){.site-header{height:72px}.hero{grid-template-columns:1fr;padding:4rem 7vw 5rem}.hero-copy{margin:0}.portrait-wrap{margin:4rem 1rem 0}.side-note{display:none}h1{font-size:clamp(4.8rem,24vw,8rem)}.about{grid-template-columns:1fr;gap:2rem}.projects-heading{display:block}.project-grid{grid-template-columns:1fr}.project-card{min-height:520px}.project-copy{display:block}.project-copy p:last-child{text-align:left}.upcoming{min-height:450px}footer{align-items:start;gap:2rem;flex-wrap:wrap}}@media(max-width:430px){nav{gap:1rem}.hero{padding-left:5vw;padding-right:5vw}.portrait-frame{outline-offset:6px}.projects{padding-left:4vw;padding-right:4vw}.project-card{padding:1.1rem}.project-copy h3{font-size:2.25rem}footer{display:grid;grid-template-columns:1fr 1fr}footer p{grid-column:1/-1;grid-row:2}}
