:root { --ink:#1d1d1a; --paper:#f6f3ed; --line:#d7d1c7; --muted:#706c64; --red:#a74732; --display:"Playfair Display",serif; --body:"DM Sans",sans-serif; --mono:"DM Mono",monospace; }

* { box-sizing:border-box; }

html { scroll-behavior:smooth; }

body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.5 var(--body); }

.site-header { height:78px; padding:0 4.5vw; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:5; background:rgba(246,243,237,.94); backdrop-filter:blur(10px); }

.wordmark { color:inherit; text-decoration:none; font:500 1.38rem var(--display); letter-spacing:-.045em; }

.site-nav { display:flex; gap:1.8rem; }
.site-nav a { color:var(--muted); font:500 .69rem var(--mono); text-decoration:none; text-transform:uppercase; letter-spacing:.1em; }
.site-nav a:hover,.site-nav a.active { color:var(--ink); }
.menu-toggle { display:none; }

.section { padding:8.5rem 4.5vw; }
.hero { min-height:calc(100svh - 78px); display:flex; flex-direction:column; justify-content:center; gap:clamp(2rem,5vh,4rem); padding-top:10vh; }

.hero-compact { min-height:0; padding-top:2rem; padding-bottom:2rem; }

.eyebrow { margin:0; font:500 .67rem var(--mono); letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
.hero h1 { margin:1.8rem 0; max-width:980px; color:var(--muted); font:400 clamp(3.2rem,7vw,7rem)/.88 var(--display); letter-spacing:-.06em; }
.hero h1 span { color:inherit; font-size:.82em; font-weight:400; }
.hero-bottom { display:flex; justify-content:space-between; align-items:end; gap:2rem; }
.hero-bottom p { max-width:360px; margin:0; color:var(--muted); font-size:.94rem; line-height:1.65; }
.text-link { display:inline-flex; gap:.7rem; color:var(--ink); text-decoration:none; border-bottom:1px solid var(--ink); padding-bottom:.4rem; font-size:.78rem; font-weight:500; letter-spacing:.02em; white-space:nowrap; }
.text-link span { color:var(--red); }

.collection { border-top:1px solid var(--line); }
.section-heading { display:grid; grid-template-columns:1fr 2fr auto; align-items:baseline; gap:1rem; margin-bottom:3.5rem; }
.section-heading h2,.about h2,.paintings-banner h2,.contact h2 { font:400 clamp(2.45rem,4.3vw,4.45rem)/1.04 var(--display); letter-spacing:-.055em; margin:0; }
.section-note { margin:0; color:var(--ink); font:500 1.3rem/1 var(--mono); letter-spacing:-.04em; }

.art-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4rem 1.8rem; }
.art-image { display:block; width:100%; aspect-ratio:3/4; border:0; cursor:zoom-in; background-position:center; background-size:cover; transition:transform .35s ease,filter .35s ease; }
.art-image:hover { transform:scale(.985); filter:brightness(.94); }
.artwork-1{background-image:url("assets/artwork-1.jpg")}
.artwork-2{background-image:url("assets/artwork-2.jpg")}
.artwork-3{background-image:url("assets/artwork-3.jpg")}
.artwork-4{background-image:url("assets/artwork-4.jpg")}
.artwork-5{background-image:url("assets/artwork-5.jpg")}
.artwork-6{background-image:url("assets/artwork-6.jpg")}
.artwork-7{background-image:url("assets/artwork-7.jpg")}
.artwork-8{background-image:url("assets/artwork-8.jpg")}
.artwork-9{background-image:url("assets/artwork-9.jpg")}
.artwork-10{background-image:url("assets/artwork-10.jpg")}
.artwork-11{background-image:url("assets/artwork-11.jpg")}
.artwork-12{background-image:url("assets/artwork-12.jpg")}
.artwork-13{background-image:url("assets/artwork-13.jpg")}
.artwork-14{background-image:url("assets/artwork-14.jpg")}
.artwork-15{background-image:url("assets/artwork-15.jpg")}
.artwork-16{background-image:url("assets/artwork-16.jpg")}
.artwork-17{background-image:url("assets/artwork-17.jpg")}
.artwork-18{background-image:url("assets/artwork-18.jpg")}
.artwork-19{background-image:url("assets/artwork-19.jpg")}
.artwork-20{background-image:url("assets/artwork-20.jpg")}
.artwork-21{background-image:url("assets/artwork-21.jpg")}
.artwork-22{background-image:url("assets/artwork-22.jpg")}
.artwork-23{background-image:url("assets/artwork-23.jpg")}
.artwork-24{background-image:url("assets/artwork-24.jpg")}
.artwork-25{background-image:url("assets/artwork-25.jpg")}
.artwork-26{background-image:url("assets/artwork-26.jpg")}.artwork-27{background-image:url("assets/artwork-27.jpg")}.artwork-28{background-image:url("assets/artwork-28.jpg")}.artwork-29{background-image:url("assets/artwork-29.jpg")}.artwork-30{background-image:url("assets/artwork-30.jpg")}.artwork-31{background-image:url("assets/artwork-31.jpg")}.artwork-32{background-image:url("assets/artwork-32.jpg")}.artwork-33{background-image:url("assets/artwork-33.jpg")}.artwork-34{background-image:url("assets/artwork-34.jpg")}.artwork-35{background-image:url("assets/artwork-35.jpg")}.artwork-36{background-image:url("assets/artwork-36.jpg")}.artwork-37{background-image:url("assets/artwork-37.jpg")}.artwork-38{background-image:url("assets/artwork-38.jpg")}.artwork-39{background-image:url("assets/artwork-39.jpg")}.artwork-40{background-image:url("assets/artwork-40.jpg")}.artwork-41{background-image:url("assets/artwork-41.jpg")}.artwork-42{background-image:url("assets/artwork-42.jpg")}.artwork-43{background-image:url("assets/artwork-43.jpg")}.artwork-44{background-image:url("assets/artwork-44.jpg")}.artwork-45{background-image:url("assets/artwork-45.jpg")}.artwork-46{background-image:url("assets/artwork-46.jpg")}.artwork-47{background-image:url("assets/artwork-47.jpg")}.artwork-48{background-image:url("assets/artwork-48.jpg")}.artwork-49{background-image:url("assets/artwork-49.jpg")}.artwork-50{background-image:url("assets/artwork-50.jpg")}.artwork-51{background-image:url("assets/artwork-51.jpg")}
.artwork-52{background-image:url("assets/artwork-52.jpg")}.artwork-53{background-image:url("assets/artwork-53.jpg")}
.painting-1{background-image:url("assets/painting-1.jpg")}.painting-2{background-image:url("assets/painting-2.jpg")}.painting-3{background-image:url("assets/painting-3.jpg")}.painting-4{background-image:url("assets/painting-4.jpg")}.painting-5{background-image:url("assets/painting-5.jpg")}.painting-6{background-image:url("assets/painting-6.jpg")}.painting-7{background-image:url("assets/painting-7.jpg")}.painting-8{background-image:url("assets/painting-8.jpg")}.painting-9{background-image:url("assets/painting-9.jpg")}.painting-10{background-image:url("assets/painting-10.jpg")}.painting-11{background-image:url("assets/painting-11.jpg")}
.art-info { display:flex; justify-content:space-between; padding-top:.8rem; }
.art-info h3,.art-info p { margin:0; font-size:.8rem; font-weight:500; }
.art-info h3 { letter-spacing:.01em; }
.status-sold { margin-left:.35rem; color:var(--red); font-family:inherit; font-size:1.1em; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.art-info p { color:var(--muted); font-family:var(--mono); font-size:.66rem; letter-spacing:.02em; }

.collection-footer { margin-top:4rem; text-align:center; }
.collection-page-intro { padding-bottom:4rem; }
.collection-page-intro h1 { margin:1.5rem 0; font:400 clamp(3rem,6.5vw,6.25rem)/.93 var(--display); letter-spacing:-.06em; }
.collection-page-intro h1 span { color:var(--muted); font-size:.82em; }
.collection-page-intro > p:last-child { margin:0; color:var(--muted); }
.collection-page { padding-top:4rem; }
.featured-card { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(220px,.9fr); gap:2rem; align-items:end; margin:0 0 5rem; }
.featured-card img { display:block; width:100%; max-height:680px; object-fit:cover; }
.featured-card figcaption { padding-bottom:1rem; }
.featured-card figcaption p:last-child { max-width:260px; margin:1rem 0 0; color:var(--muted); font:400 clamp(1.5rem,2.6vw,2.35rem)/1.15 var(--display); letter-spacing:-.04em; }
.front-page-card { grid-template-columns:1fr; gap:1.2rem; max-width:760px; margin:0 auto 5rem; }
.front-page-card figcaption { padding:0; order:-1; }
.front-page-card figcaption p:last-child { max-width:none; margin:0; color:var(--ink); font-size:clamp(1.35rem,2.3vw,2rem); }
.front-page-card img { max-height:none; object-fit:contain; }
.collection-page-heading { display:flex; justify-content:space-between; align-items:baseline; padding-bottom:1.25rem; margin-bottom:3rem; border-bottom:1px solid var(--line); }
.collection-page-heading p:last-child { margin:0; color:var(--muted); font-size:.85rem; }
.collection-pagination { display:flex; justify-content:space-between; align-items:center; margin-top:5rem; padding-top:1.25rem; border-top:1px solid var(--line); }
.collection-pagination span { color:var(--muted); font:.7rem var(--mono); }
.art-card-details-copy { max-width:720px; margin:0 auto; padding-top:4rem; border-top:1px solid var(--line); }
.art-card-details-copy p { max-width:620px; margin:0 0 1.4rem; color:var(--muted); font-size:1rem; line-height:1.7; }
.art-card-details-copy .text-link { margin-top:1rem; }
.collection-footer-site { display:flex; align-items:center; justify-content:space-between; padding-top:3rem; padding-bottom:3rem; border-top:1px solid var(--line); }
.collection-footer-site p { color:var(--muted); font:.67rem var(--mono); }

.about { display:grid; grid-template-columns:1fr 2fr; gap:1rem; border-top:1px solid var(--line); }
.about > div { max-width:700px; }
.about h2 { margin-bottom:1.75rem; }
.about div > p { color:var(--muted); font-size:1rem; line-height:1.7; max-width:510px; margin:0 0 2rem; }
.paintings-banner { background:#2b2b2a; color:var(--paper); }
.paintings-banner .eyebrow { color:#b7b1a7; }
.paintings-banner h2 { max-width:800px; margin:1.8rem 0 2.8rem; }
.paintings-intro { max-width:620px; margin-top:3rem; color:#ddd7cd; font-size:1rem; line-height:1.7; }
.paintings-intro p { margin:0 0 1rem; }
.paintings-grid { grid-template-columns:repeat(2,minmax(0,400px)); justify-content:center; gap:6rem 3rem; margin-top:5rem; }
.paintings-banner .art-info p { color:#ddd7cd; }
.button { padding:.9rem 1.15rem; background:var(--paper); color:var(--ink); display:inline-block; text-decoration:none; font:500 .68rem var(--mono); letter-spacing:.1em; text-transform:uppercase; }
.contact { min-height:62vh; display:flex; flex-direction:column; justify-content:center; }
.contact h2 { margin:1.6rem 0 .7rem; }
.contact-email { color:var(--red); font:400 clamp(1.65rem,3.2vw,3.25rem) var(--display); letter-spacing:-.04em; text-decoration:none; border-bottom:1px solid currentColor; width:max-content; max-width:100%; }
.footer-note { margin:5rem 0 0; color:var(--muted); font:.66rem var(--mono); letter-spacing:.04em; }

.art-dialog { width:min(720px,92vw); padding:0; border:0; background:var(--paper); color:var(--ink); }
.art-dialog::backdrop { background:rgba(20,19,17,.7); }
.dialog-image { width:100%; aspect-ratio:3/4; max-height:68vh; background-color:#2b2b2a; background-position:center; background-repeat:no-repeat; background-size:contain; }
.art-dialog > div:last-child { padding:1.7rem 2rem 2rem; }
.art-dialog h2 { margin:.6rem 0; font:400 2.5rem var(--display); letter-spacing:-.04em; }
.art-dialog p:last-child { color:var(--muted); margin:0; }
.dialog-close { position:absolute; top:.8rem; right:.8rem; z-index:1; width:2.2rem; height:2.2rem; border:0; border-radius:50%; background:var(--paper); font-size:1.5rem; cursor:pointer; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }

@media (max-width:700px) { .site-header { height:64px; padding:0 1.25rem; }
.menu-toggle { display:block; padding:0; border:0; background:none; color:var(--ink); font:500 .68rem var(--mono); letter-spacing:.1em; text-transform:uppercase; }
.site-nav { display:none; position:absolute; left:0; right:0; top:64px; padding:1.2rem 1.25rem 1.5rem; background:var(--paper); border-bottom:1px solid var(--line); flex-direction:column; gap:1rem; }
.site-nav.open { display:flex; }
.section { padding:5rem 1.25rem; }
.hero { min-height:calc(100svh - 64px); gap:2.2rem; padding-top:7vh; }
.hero-compact { min-height:0; padding-top:1.25rem; padding-bottom:1.25rem; }
.hero h1 { font-size:clamp(3.25rem,15vw,5rem); }
.hero-bottom { display:block; }
.hero-bottom .text-link { margin-top:2rem; }
.hero-compact .text-link { margin-top:0; }
.section-heading,.about { display:block; }
.section-heading h2 { margin:1rem 0; }
.art-grid { grid-template-columns:1fr; gap:3rem; }
.paintings-grid { grid-template-columns:minmax(0,340px); justify-content:center; gap:4rem; }
.collection-page-intro h1 { font-size:clamp(3rem,14vw,4.5rem); }
.featured-card { grid-template-columns:1fr; gap:1.5rem; margin-bottom:4rem; }
.featured-card figcaption { padding:0; }
.collection-page-heading { margin-bottom:2.5rem; }
.collection-page-heading p:last-child { font-size:.75rem; }
.collection-footer-site { padding-top:2rem; padding-bottom:2rem; }
.about > .eyebrow { margin-bottom:1.2rem; }
.paintings-banner h2 { font-size:2.9rem; }
.contact-email { font-size:1.7rem; }
.art-dialog > div:last-child { padding:1.2rem; }
 }
