@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Manrope:wght@400;500;600&display=swap");

:root{--bg:#f5f1eb;--section:#efe9e1;--card:#faf7f2;--text:#2e2925;--secondary:#5f564d;--muted:#8a7f73;--accent:#a88b5e;--accent-hover:#8f744d;--line:#cfc2b2;--display:"Cormorant Garamond",Georgia,serif;--body:Manrope,"Segoe UI",sans-serif;--shadow:0 24px 70px rgb(46 41 37/.2)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--secondary);font-family:var(--body);line-height:1.7}body:has(dialog[open]){overflow:hidden}img{display:block;max-width:100%}button,a{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--text);color:#fff;padding:.65rem 1rem}.skip-link:focus{top:1rem}.site-header{align-items:center;display:grid;grid-template-columns:minmax(170px,1fr) auto auto;gap:2rem;max-width:1440px;margin:auto;padding:2rem clamp(1.25rem,4vw,5rem);position:relative;z-index:5}.signature{color:var(--text);font-family:var(--display);font-size:2rem;font-style:italic;text-decoration:none}.main-navigation{display:flex;gap:clamp(1.2rem,2.5vw,2.8rem)}.main-navigation a{color:var(--text);font-size:.72rem;letter-spacing:.16em;padding:.4rem 0;text-decoration:none;text-transform:uppercase}.main-navigation a::after{background:var(--accent);content:"";display:block;height:1px;margin-top:.4rem;transform:scaleX(0);transition:transform .2s}.main-navigation a:hover::after,.main-navigation a.is-active::after{transform:scaleX(1)}.language-switcher{display:flex;gap:.35rem;color:var(--muted)}.language-switcher button{border:0;background:none;color:inherit;cursor:pointer;font-size:.75rem;padding:.3rem}.language-switcher button.is-active{color:var(--text);font-weight:600}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);min-height:780px;max-width:1440px;margin:auto;padding:5rem clamp(1.25rem,4vw,5rem) 0;position:relative;overflow:hidden}.hero-copy{max-width:610px;position:relative;z-index:2}.eyebrow{color:var(--text);font-size:.74rem;letter-spacing:.32em;text-transform:uppercase}.hero h1{color:var(--text);font-family:var(--display);font-size:clamp(4rem,7vw,7.8rem);font-weight:400;letter-spacing:-.03em;line-height:.82;margin:2.2rem 0}.hero h1 small{display:block;font-size:.39em;letter-spacing:-.01em;line-height:1.35;margin-top:1rem}.ornament{align-items:center;display:flex;gap:1.1rem;max-width:320px}.ornament span{background:var(--line);height:1px;flex:1}.ornament i{background:var(--accent);height:8px;transform:rotate(45deg);width:8px}.artist-role{color:var(--accent-hover);font-size:.75rem;letter-spacing:.23em;margin:2rem 0;text-transform:uppercase}.artist-years{color:var(--text);font-family:var(--display);font-size:2.4rem;letter-spacing:.08em;margin:1rem 0}.hero-description{max-width:480px}.outline-button{border:1px solid var(--accent);color:var(--text);display:inline-block;font-size:.72rem;letter-spacing:.2em;margin-top:1.5rem;padding:.9rem 1.5rem;text-decoration:none;text-transform:uppercase;transition:.2s}.outline-button:hover{background:#f1e8db}.hero-visual{inset:0 0 0 38%;position:absolute}.hero-portrait{bottom:0;height:92%;object-fit:contain;object-position:right bottom;position:absolute;right:3%;width:58%}.hero-landscape{bottom:0;height:34%;left:0;mask-image:linear-gradient(to top,black 55%,transparent),linear-gradient(to right,black 70%,transparent);object-fit:cover;opacity:.38;position:absolute;width:72%}.section-shell{max-width:1440px;margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,5rem)}.section-heading h2,.about h2{color:var(--text);font-family:var(--display);font-size:clamp(3rem,5vw,5.5rem);font-weight:400;line-height:1;margin:.4rem 0 2.5rem}.featured{background:var(--card)}.artwork-grid{display:grid;gap:1.4rem;grid-template-columns:repeat(3,1fr)}.artwork-card{background:#ddd;cursor:pointer;min-height:330px;overflow:hidden;position:relative}.artwork-card img{height:100%;object-fit:cover;transition:transform .55s;width:100%}.artwork-overlay{align-items:flex-end;background:linear-gradient(transparent 25%,rgb(25 22 18/.84));color:#fff;display:flex;inset:0;opacity:0;padding:1.5rem;position:absolute;transition:opacity .3s}.artwork-card:hover img,.artwork-card:focus-visible img{transform:scale(1.025)}.artwork-card:hover .artwork-overlay,.artwork-card:focus-visible .artwork-overlay{opacity:1}.artwork-overlay h3{font-family:var(--display);font-size:1.75rem;font-weight:400;line-height:1.1;margin:0}.artwork-overlay p{font-size:.8rem;line-height:1.5;margin:.35rem 0 0}.text-link{color:var(--text);display:inline-block;font-size:.72rem;letter-spacing:.16em;margin-top:2rem;text-transform:uppercase;text-underline-offset:.5rem}.quote{align-items:center;display:grid;grid-template-columns:auto 1fr auto;gap:2rem}.quote-mark{color:var(--accent);font-family:var(--display);font-size:7rem;line-height:.5}.quote blockquote{color:var(--text);font-family:var(--display);font-size:clamp(1.55rem,2.5vw,2.5rem);line-height:1.35;margin:0}.about{background:var(--section);display:grid;gap:8vw;grid-template-columns:.8fr 1.2fr}.about>p{font-family:var(--display);font-size:clamp(1.35rem,2vw,2rem);margin-top:3rem}.news{text-align:center}.empty-state{color:var(--muted)}.site-footer{background:var(--text);color:#d8d0c6;display:grid;gap:1rem;padding:3rem clamp(1.25rem,4vw,5rem);text-align:center}.site-footer .signature{color:#fff}.artwork-dialog{background:var(--card);border:0;box-shadow:var(--shadow);max-height:90vh;padding:0;width:min(50vw,900px)}.artwork-dialog::backdrop{background:rgb(29 25 22/.72);backdrop-filter:blur(3px)}.artwork-dialog figure{margin:0;overflow:auto;max-height:90vh}.artwork-dialog img{max-height:62vh;object-fit:contain;width:100%}.artwork-dialog figcaption{padding:1.5rem 2rem 2rem}.artwork-dialog h2{color:var(--text);font-family:var(--display);font-size:2.4rem;font-weight:400;margin:0}.dialog-meta{color:var(--accent-hover);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}.dialog-close{background:var(--card);border:0;border-radius:50%;color:var(--text);cursor:pointer;font-size:1.8rem;height:42px;position:absolute;right:.75rem;top:.75rem;width:42px;z-index:2}
@media(max-width:950px){.site-header{grid-template-columns:1fr auto auto}.menu-toggle{background:none;border:1px solid var(--line);display:block;font-size:.7rem;letter-spacing:.16em;padding:.6rem .8rem;text-transform:uppercase}.main-navigation{background:var(--card);box-shadow:var(--shadow);display:none;flex-direction:column;gap:1rem;left:1rem;padding:1.5rem;position:absolute;right:1rem;top:5.5rem}.main-navigation.is-open{display:flex}.hero{grid-template-columns:1fr;min-height:840px;padding-top:3rem}.hero-copy{max-width:560px}.hero-visual{inset:20% 0 0 25%;opacity:.65}.hero-portrait{width:75%}.artwork-grid{grid-template-columns:1fr 1fr}.quote{grid-template-columns:auto 1fr}.quote-signature{grid-column:2}.artwork-dialog{width:min(88vw,760px)}}
@media(max-width:620px){.site-header{gap:.75rem;padding:1rem 1.25rem}.signature{font-size:1.5rem}.hero{min-height:820px}.hero h1{font-size:3.7rem;margin:1.5rem 0}.hero-visual{inset:33% -20% 0 12%;opacity:.45}.hero-portrait{height:75%;width:90%}.hero-landscape{width:100%}.artwork-grid{grid-template-columns:1fr}.artwork-card{min-height:300px}.artwork-overlay{opacity:1}.quote{align-items:start;gap:1rem;grid-template-columns:1fr}.quote-mark{font-size:5rem}.quote-signature{grid-column:1}.about{display:block}.artwork-dialog{max-height:94vh;width:94vw}.artwork-dialog figure{max-height:94vh}.artwork-dialog img{max-height:52vh}.artwork-dialog figcaption{padding:1.25rem}.language-switcher span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.page-main{min-height:calc(100vh - 110px)}.page-intro{border-bottom:1px solid var(--line);padding-bottom:clamp(2.5rem,5vw,5rem);padding-top:clamp(4rem,8vw,8rem)}.page-intro h1{color:var(--text);font-family:var(--display);font-size:clamp(3.7rem,8vw,8rem);font-weight:400;letter-spacing:-.03em;line-height:.95;margin:.7rem 0 1.5rem}.page-intro p:last-child{font-family:var(--display);font-size:clamp(1.3rem,2.3vw,2.1rem);max-width:850px}.prose-layout{display:grid;gap:clamp(2rem,6vw,7rem);grid-template-columns:minmax(220px,.65fr) minmax(300px,1.35fr)}.prose-layout h2{color:var(--text);font-family:var(--display);font-size:clamp(2.4rem,4vw,4rem);font-weight:400;line-height:1.05;margin:0}.prose-layout p{font-size:1.05rem;margin-top:0;max-width:760px}.gallery-page .artwork-grid{margin-top:2rem}.contact-list{list-style:none;margin:0;padding:0}.contact-list li{border-top:1px solid var(--line);padding:1rem 0}.contact-list a{color:var(--text)}
@media(max-width:720px){.prose-layout{grid-template-columns:1fr}.page-intro{padding-top:3rem}}

/* Reference-led home hero */
.hero{isolation:isolate;min-height:820px;padding-top:7rem}
.hero::before{background-image:linear-gradient(to bottom,rgb(245 241 235/.9) 0%,rgb(245 241 235/.3) 38%,rgb(245 241 235/.12) 100%),url("/images/hero-background.png");background-position:center bottom;background-repeat:no-repeat;background-size:cover;content:"";inset:0;opacity:.76;position:absolute;z-index:-2}
.hero::after{background:linear-gradient(to right,var(--bg) 0%,rgb(245 241 235/.74) 34%,transparent 63%);content:"";inset:0;position:absolute;z-index:-1}
.hero-visual{z-index:1}
.hero-portrait{bottom:-2%;filter:drop-shadow(18px 14px 18px rgb(46 41 37/.18));height:94%;right:1%;width:63%;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 78%,rgb(0 0 0/.82) 87%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 78%,rgb(0 0 0/.82) 87%,transparent 100%)}
.hero-landscape{display:none}
@media(max-width:950px){.hero{padding-top:3rem}.hero-visual{inset:18% -4% 0 28%;opacity:.68}.hero-portrait{height:84%;width:82%}}
@media(max-width:620px){.hero::after{background:linear-gradient(to bottom,var(--bg) 0%,rgb(245 241 235/.8) 50%,transparent 82%)}.hero-visual{inset:35% -24% 0 5%;opacity:.46}.hero-portrait{height:70%;width:100%}}

/* Unified surface and refined home composition */
:root{--bg:#efeeec;--section:#efeeec;--card:#efeeec}
body,.featured,.about,.news,.page-main,.page-intro{background:#efeeec}
.site-header{background:rgb(239 238 236/.96);border-bottom:1px solid rgb(207 194 178/.42);max-width:none;padding-inline:max(clamp(1.25rem,4vw,5rem),calc((100vw - 1440px)/2 + 1.25rem));position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.hero{padding-top:3.5rem}
.hero::before{background-image:linear-gradient(to bottom,rgb(239 238 236/.9) 0%,rgb(239 238 236/.3) 38%,rgb(239 238 236/.12) 100%),url("/images/hero-background.png")}
.hero::after{background:linear-gradient(to right,var(--bg) 0%,rgb(239 238 236/.74) 34%,transparent 63%)}
.hero-visual{inset:3.5rem 0 0 38%}
.hero-portrait{bottom:auto;height:104%;object-position:right top;right:1%;top:-2%;width:63%}
.artwork-card{appearance:none;border:0;box-shadow:none;outline-offset:4px;padding:0}
.quote-close{color:var(--accent);font-family:var(--display);font-size:1.65em;line-height:0;margin-left:.12em;vertical-align:-.25em}
@media(max-width:950px){.hero{padding-top:1.5rem}.hero-visual{inset:1.5rem -4% 0 28%}.hero-portrait{height:92%;width:82%}.main-navigation{top:100%}}
@media(max-width:620px){.site-header{padding:1rem 1.25rem}.hero::after{background:linear-gradient(to bottom,var(--bg) 0%,rgb(239 238 236/.8) 50%,transparent 82%)}.hero-visual{inset:32% -24% 0 5%}.hero-portrait{height:74%;width:100%}}
