:root{--paper:#fff;--surface:#fff;--surface-alt:#f6f6f5;--ink:#0b0b0b;--muted:#6c6c6c;--line:#e6e6e6;--accent:#e23b2e;--accent-ink:#c5301f;--serif:"Onest", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--sans:"Onest", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--container:1200px;--card-w:320px;--gap:clamp(1rem, 3vw, 2rem);--radius:0px;--shadow:none}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:hover{color:var(--accent-ink)}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3,h4{font-family:var(--serif);letter-spacing:-.02em;margin:0 0 .4em;font-weight:600;line-height:1.06}h1{font-size:clamp(2.1rem,5.5vw,3.6rem)}h2{font-size:clamp(1.6rem,3.5vw,2.3rem)}h3{letter-spacing:-.01em;font-size:1.2rem}p{margin:0 0 1rem}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(1.1rem,4vw,2.5rem)}.container--narrow{max-width:760px}.container--read{max-width:880px}.framed-img{border-radius:var(--radius);border:1px solid var(--line)}.eyebrow{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 1rem;font-size:.72rem;font-weight:600}.lead{color:var(--muted);max-width:60ch;font-size:1.18rem}.muted{color:var(--muted)}.btn{letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius);border:1px solid var(--ink);cursor:pointer;align-items:center;gap:.5rem;padding:.85rem 1.5rem;font-size:.76rem;font-weight:600;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.btn--primary{background:var(--ink);color:#fff}.btn--primary:hover,.btn--ghost{color:var(--ink);background:0 0}.btn--ghost:hover{background:var(--ink);color:#fff}.section{padding-block:clamp(3.5rem,8vw,7rem)}.section--tight{padding-block:clamp(2rem,4vw,3rem)}.section--cozy{padding-block:clamp(2.25rem,5vw,4.25rem)}.section__head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2.5rem;display:flex}.section__head h2{margin:0}.section--alt{background:var(--surface-alt);border-block:1px solid var(--line)}.section--ink{background:var(--ink);color:#fff;border-block:1px solid #232323}.section--ink h1,.section--ink h2,.section--ink h3{color:#fff}.section--ink .lead,.section--ink .muted{color:#ffffffad}.section--ink .eyebrow{color:#fff9}.section--ink a{color:#fff}.section--ink .btn--primary{color:var(--ink);background:#fff;border-color:#fff}.section--ink .btn--primary:hover{color:#fff;background:0 0;border-color:#fff}.section--ink .btn--ghost{color:#fff;border-color:#ffffff73}.section--ink .btn--ghost:hover{color:var(--ink);background:#fff}.grid{gap:var(--gap);display:grid}.grid--2{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr))}.grid--3{grid-template-columns:repeat(auto-fill, minmax(min(100%, var(--card-w)), var(--card-w)))}.masonry{columns:3 270px;column-gap:var(--gap)}.masonry>*{break-inside:avoid;margin-bottom:var(--gap)}.card{background:0 0;flex-direction:column;display:flex}.card__media{aspect-ratio:16/10;background:var(--surface-alt);overflow:hidden}.card__media img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.6,.2,1)}.card:hover .card__media img{transform:scale(1.03)}.card__media--portrait{aspect-ratio:3/4}.card__media--natural{aspect-ratio:auto}.card__media--natural img{height:auto}.card__body{flex-direction:column;flex:1;gap:.3rem;padding:.85rem 0 .2rem;display:flex}.card__title{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:1.02rem;font-weight:600;line-height:1.25}.card__meta{color:var(--muted);font-size:.8rem}.card__foot{margin-top:auto;padding-top:.7rem}.tag{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);border:1px solid var(--line);border-radius:0;padding:.2rem .55rem;font-size:.68rem;display:inline-block}.hero{padding-block:clamp(2.4rem,6vw,4.5rem)}.hero .lead{margin-block:1.1rem 1.8rem}.hero__cta{flex-wrap:wrap;gap:.8rem;display:flex}.hero__grid{grid-template-columns:1fr;align-items:center;gap:clamp(1.6rem,4vw,3rem);display:grid}.hero__copy h1{letter-spacing:-.02em;max-width:20ch;font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.1}.hero__portrait{aspect-ratio:4/5;border-radius:var(--radius);background-color:var(--line);background-position:50%;background-repeat:no-repeat;background-size:cover;width:100%;max-width:300px;margin-inline:auto}@media (width>=820px){.hero__grid--split{grid-template-columns:1.2fr .8fr}.hero__grid--split .hero__copy h1{max-width:18ch}.hero__portrait{max-width:360px}}.doors{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));display:grid}.door{background:var(--surface);border:1px solid var(--line);flex-direction:column;gap:.6rem;min-height:240px;padding:2rem 1.8rem;transition:background .25s,color .25s;display:flex}.door:hover{background:var(--ink);color:#fff}.door:hover .muted{color:#ffffffb8}.door:hover .btn{color:#fff;border-color:#fff}.door:hover .btn:hover{color:var(--ink);background:#fff}.door h3{margin:0;font-size:1.4rem}.door .btn{align-self:start;margin-top:auto}.site-header{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 88%, transparent);backdrop-filter:blur(8px);z-index:50;position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;display:flex}.brand{font-family:var(--serif);letter-spacing:.04em;text-transform:uppercase;font-size:1.05rem;font-weight:600}.brand span{color:var(--ink)}.nav{align-items:center;gap:1.6rem;display:flex}.nav a{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.74rem;font-weight:500}.nav a:hover{color:var(--accent-ink)}.nav a[aria-current=page]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:6px;text-decoration-thickness:2px}.nav-toggle{cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:9px;display:none}.nav-toggle span{background:var(--ink);border-radius:2px;width:100%;height:2px;transition:transform .2s,opacity .2s;display:block}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=720px){.nav-toggle{display:flex}.nav{background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:0;display:none;position:absolute;top:100%;left:0;right:0}.nav[data-open]{display:flex}.nav a{border-top:1px solid var(--line);padding:.95rem clamp(1.1rem,4vw,2.5rem)}.nav a[aria-current=page]{color:var(--accent-ink);text-decoration:none}}.site-footer{border-top:1px solid var(--line);background:var(--surface);margin-top:2rem;padding-block:2.5rem}.site-footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:1.5rem;display:flex}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--ink)}.prose{max-width:68ch}.prose p{margin-bottom:1.1rem}.prose h2,.prose h3{margin-top:1.8rem}.prose img{border-radius:var(--radius);margin-block:1.4rem}.prose a{text-underline-offset:.15em;text-decoration:underline}.prose ul,.prose ol{margin:0 0 1.1rem 1.2rem}.prose li{margin-bottom:.4rem}.prose blockquote{border-left:2px solid var(--line);color:var(--muted);margin:1.4rem 0;padding-left:1rem;font-style:italic}.prose.bio p{color:var(--muted);max-width:60ch;font-size:1.18rem}.embed{aspect-ratio:16/9;border-radius:var(--radius);border:1px solid var(--line);position:relative;overflow:hidden}.embed iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.field{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.field label{font-size:.85rem;font-weight:550}.field input,.field textarea,.field select{font:inherit;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:.7rem .85rem}.field input:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.form-note{font-size:.85rem}.form-note--ok{color:#2e7d52}.form-note--err{color:#b3402f}.center{text-align:center}.stack-sm>*+*{margin-top:.5rem}.divider{background:var(--line);border:0;height:1px;margin-block:2rem}.price{font-family:var(--serif);font-size:1.05rem}.badge-sold{color:#b3402f}.rail{gap:var(--gap);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding-bottom:.75rem;scroll-padding-left:clamp(1.1rem,4vw,2.5rem);display:flex;overflow-x:auto}.rail>*{scroll-snap-align:start;flex:0 0 clamp(240px, 80vw, var(--card-w))}.rail::-webkit-scrollbar{height:6px}.rail::-webkit-scrollbar-thumb{background:var(--line)}.work{align-items:start;gap:clamp(1.6rem,5vw,4rem);display:grid}@media (width>=860px){.work{grid-template-columns:1.5fr .5fr}}.work__plate{gap:var(--gap);flex-direction:column;margin:0;display:flex}.work__plate img{border:1px solid var(--line);background:var(--surface-alt);width:100%}.work__title{margin:0 0 .2rem}.work__year{color:var(--muted);font-weight:400}.work__label .lead{margin-top:.8rem;font-size:1rem}.wall-label{margin:1.4rem 0;font-size:.86rem;line-height:1.5}.wall-label dt{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:.75rem;font-size:.64rem}.wall-label dd{margin:0}.work__price{font-family:var(--serif);margin:1.1rem 0 1.4rem;font-size:1.1rem}.card__artist{text-transform:uppercase;letter-spacing:.06em;color:var(--ink);font-size:.72rem}.reveal{transition:opacity .6s,transform .6s}:root.js .reveal{opacity:0;transform:translateY(14px)}:root.js .reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){:root.js .reveal{opacity:1;transition:none;transform:none}.card:hover .card__media img{transform:none}html{scroll-behavior:auto}}
