/* Marieta Pamfil-Berger — site vitrină. Paletă caldă, întunecată, discretă. */
:root{
  --bg:#f4f0e8; --bg-2:#ebe6dc; --bg-3:#e2dccf;
  --ink:#2a2622; --ink-2:#5f584e; --ink-3:#766e65;
  --line:rgba(42,38,34,.14); --accent:#7a5f2a;
  --bg-rgb:244,240,232; --shadow:rgba(42,38,34,.18);
  --serif:"Cormorant Garamond","EB Garamond",Baskerville,"Palatino Linotype",Palatino,"Hoefler Text",Georgia,"Times New Roman",serif;
  --sans:"Avenir Next",Avenir,"Segoe UI",Helvetica,Arial,sans-serif;
  --max:1280px; --pad:clamp(1.1rem,4vw,3rem);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;background:var(--bg);color:var(--ink);font-family:var(--serif);font-size:clamp(1.05rem,1.1vw + .8rem,1.25rem);line-height:1.55;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:1px solid var(--accent);outline-offset:4px}
html[data-tema="deschis"] body{--bg:#f4f0e8;--bg-2:#ebe6dc;--bg-3:#e2dccf;--ink:#2a2622;--ink-2:#5f584e;--ink-3:#766e65;--line:rgba(42,38,34,.14);--accent:#7a5f2a;--bg-rgb:244,240,232;--shadow:rgba(42,38,34,.18)}
body.dark,html[data-tema="intunecat"] body{--bg:#1c1a17;--bg-2:#242119;--bg-3:#2c2820;--ink:#ece6da;--ink-2:#bdb3a3;--ink-3:#9c927f;--line:rgba(236,230,218,.13);--accent:#c6a768;--bg-rgb:28,26,23;--shadow:rgba(0,0,0,.5)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}

/* antet */
.site-header{position:sticky;top:0;z-index:20;background:rgba(var(--bg-rgb),.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:baseline;justify-content:space-between;gap:1rem 2rem;padding-top:1rem;padding-bottom:1rem;flex-wrap:wrap}
.brand{font-size:1.25rem;letter-spacing:.06em;text-transform:uppercase;font-weight:500;white-space:nowrap}
.brand small{display:block;font-family:var(--sans);font-size:.62rem;letter-spacing:.22em;color:var(--ink-3);text-transform:uppercase;margin-top:.2rem}
.nav{display:flex;flex-wrap:wrap;gap:.3rem 1.6rem;font-family:var(--sans);font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2)}
.nav a{white-space:nowrap}
.nav a{padding:.3rem 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.nav a:hover,.nav a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--accent)}

/* intro pagină de start: lucrarea întreagă, ca o planșă de catalog, textul alături */
.hero{border-bottom:1px solid var(--line)}
.hero-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(2rem,5vw,5rem);align-items:stretch;padding-top:clamp(1.5rem,3vw,2.5rem);padding-bottom:clamp(1.5rem,3vw,2.5rem)}
.hero .text{display:flex;flex-direction:column;justify-content:space-between;gap:2.5rem;padding:clamp(1rem,3vw,2.5rem) 0 .5rem}
.hero .text > div > *{max-width:30ch}
.hero .eyebrow{color:var(--ink-3);margin-bottom:1.6rem}
.hero h1{font-size:clamp(2.6rem,5.2vw,5rem);font-weight:400;line-height:1;margin:0 0 .7rem;letter-spacing:-.01em}
.hero .dates{font-family:var(--sans);font-size:.76rem;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-2);margin:0 0 1.4rem}
.hero .lead{font-size:clamp(1.1rem,1.5vw,1.4rem);font-style:italic;color:var(--ink-2);margin:0;line-height:1.4}
.hero-expo{display:block;max-width:34ch;padding-top:1.3rem;border-top:1px solid var(--line)}
.hero-expo .k,.hero-expo .when,.hero-expo .v{display:block;font-family:var(--sans);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase}
.hero-expo .k{color:var(--accent);margin-bottom:.5rem}
.hero-expo strong{display:block;font-weight:400;font-style:italic;font-size:clamp(1.8rem,2.6vw,2.6rem);line-height:1.05;margin-bottom:.5rem}
.hero-expo .when{color:var(--ink);letter-spacing:.18em;margin-bottom:.35rem}
.hero-expo .where{display:block;color:var(--ink-2);margin-bottom:.35rem}
.hero-expo .v{color:var(--ink-3);letter-spacing:.14em;text-transform:none;font-size:.78rem;margin-bottom:1.1rem}
.hero-expo .more{display:inline-block;transition:color .2s}
.hero-expo:hover .more{color:var(--accent)}
.hero .image{position:relative;width:max-content;max-width:100%;justify-self:end;align-self:start;box-shadow:0 18px 50px var(--shadow)}
.hero .image img{height:min(calc(100vh - 11.5rem),860px);width:auto;max-width:100%}
.hero .image figcaption{position:absolute;right:1rem;bottom:.8rem;font-family:var(--sans);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7);mix-blend-mode:difference}
/* pe prima pagină numele stă în intro; în antet apare abia după ce intro-ul a ieșit din ecran */
.acasa .brand{opacity:0;pointer-events:none;transition:opacity .3s}
.acasa.trecut .brand{opacity:1;pointer-events:auto}
@media (max-width:820px){.section{scroll-margin-top:9.5rem}.hero-in{grid-template-columns:minmax(0,1fr);gap:1.6rem;padding-top:0}.hero .image{order:1;min-width:0;justify-self:stretch;box-shadow:none;margin:0 calc(-1 * var(--pad));width:auto;max-width:none}.hero .image img{width:100%;height:auto;max-height:none}.hero .text{order:2;padding:.6rem 0 1.4rem;gap:2rem}.hero .eyebrow{margin-bottom:1.1rem}}

/* secțiuni text */
.section{padding:clamp(3rem,7vw,6rem) 0;border-top:1px solid var(--line);scroll-margin-top:5.5rem}
.section-head{margin-bottom:clamp(1.8rem,4vw,3rem);max-width:60ch}
.eyebrow{font-family:var(--sans);font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;color:var(--accent);margin:0 0 .8rem}
h2,.section-head h1,.bio-text h1{font-weight:400;font-size:clamp(1.9rem,4vw,3rem);line-height:1.1;margin:0 0 .8rem;letter-spacing:-.01em}
.eyebrow-h{font-weight:400}
.section-head p{color:var(--ink-2);margin:0;font-size:1.05em}
.count{font-family:var(--sans);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)}

/* grilă de lucrări */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:clamp(1.4rem,3vw,2.8rem) clamp(1rem,2.4vw,2rem);margin:0;padding:0;list-style:none}
.work,.work a{scroll-margin-top:6rem}
.work{margin:0}
.work figure{margin:0}
.work a{display:block}
.work .ph{aspect-ratio:4/5;overflow:hidden;background:var(--bg-2)}   /* imaginile sunt exact 4:5, nu se taie nimic */
.work img{width:100%;height:100%;object-fit:cover;transition:transform 1s ease}
.work a:hover img{transform:scale(1.025)}
.work figcaption{display:flex;justify-content:space-between;gap:.6rem;align-items:baseline;margin-top:.7rem;font-size:1rem;color:var(--ink-2)}
.work figcaption b{font-weight:400;color:var(--ink)}
.work figcaption b.tip,.lb figcaption b.tip{color:var(--ink-2);font-style:italic}   /* lucrări fără titlu: se afișează tipul obiectului */
.work figcaption i{font-style:normal;font-family:var(--sans);font-size:.62rem;letter-spacing:.14em;color:var(--ink-3)}

/* biografie */
.bio{display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.bio .portrait{position:sticky;top:6rem}
.bio .portrait img{width:100%;filter:saturate(.1) contrast(1.02)}
.bio .portrait figcaption{font-family:var(--sans);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);margin-top:.8rem}
.bio-text p{margin:0 0 1.1rem;max-width:62ch}
.cv{margin:2.5rem 0 0;border-top:1px solid var(--line)}
.cv .row{display:grid;grid-template-columns:minmax(140px,1fr) 2fr;column-gap:1.5rem;row-gap:0;padding:1rem 0;border-bottom:1px solid var(--line)}
.cv dt{grid-column:1;grid-row:1}
.cv dd{grid-column:2}
.cv dd + dd{margin-top:.25rem}
.cv dt{font-family:var(--sans);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);padding-top:.35rem}
.cv dd{margin:0;color:var(--ink-2)}

.bio-teaser{display:grid;grid-template-columns:minmax(160px,220px) 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.bio-teaser img{filter:saturate(.1)}
.bio-teaser p{font-size:1.1em;max-width:52ch;margin:0 0 1.2rem;color:var(--ink-2)}
.more{font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--accent);padding-bottom:.25rem}
.more:hover{color:var(--accent)}
@media (max-width:720px){.bio,.bio-teaser{grid-template-columns:1fr}.bio .portrait{position:static;max-width:320px}.cv .row{grid-template-columns:1fr}.cv dd{grid-column:1}.cv dt{margin-bottom:.3rem}}

/* expoziție */
.expo-body{max-width:68ch}   /* titlul, data și locul expoziției stau doar în intro */
.expo-body .eyebrow{margin-bottom:1.4rem}
.expo-body p{max-width:62ch;margin:0 0 1.1rem}
.expo-body .cv{margin:1.8rem 0 2rem}
.expo-body .program dd{display:grid;grid-template-columns:minmax(15ch,19ch) 1fr;column-gap:1.2rem;align-items:baseline}   /* program: data într-o coloană, evenimentul în a doua */
.expo-body .program dd + dd{margin-top:.6rem}
.expo-body .program dd span{color:var(--ink-3);font-family:var(--sans);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;line-height:1.5}
@media (max-width:720px){.expo-body .program dd{grid-template-columns:1fr;row-gap:.15rem}}

/* subsol */
.site-footer{border-top:1px solid var(--line);padding:2.5rem 0 3rem;color:var(--ink-3);font-family:var(--sans);font-size:.72rem;letter-spacing:.12em}
.site-footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}
.site-footer a:hover{color:var(--ink)}
.site-footer .tema{background:none;border:0;border-bottom:1px solid var(--line);padding:0 0 .15rem;font:inherit;letter-spacing:inherit;color:var(--ink-3);cursor:pointer}
.site-footer .tema:hover{color:var(--ink)}
.site-footer .wrap{align-items:baseline}

/* vizualizator (lightbox) */
.lb{position:fixed;inset:0;z-index:50;background:rgba(var(--bg-rgb),.97);display:none;flex-direction:column;align-items:center;justify-content:center;padding:3.5rem 4.5rem 3.2rem;opacity:0;transition:opacity .25s}
.lb.open{display:flex}
.lb.show{opacity:1}
.lb img{max-width:100%;max-height:calc(100vh - 8.5rem);width:auto;height:auto;object-fit:contain;box-shadow:0 24px 60px var(--shadow);user-select:none;-webkit-user-drag:none}
.lb figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:.9rem;max-width:100%}
.lb figcaption{text-align:center;color:var(--ink-2);font-size:1.05rem}
.lb figcaption b{font-weight:400;color:var(--ink);margin-right:.8rem}
.lb figcaption i{font-style:normal;font-family:var(--sans);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.lb button{position:absolute;background:none;border:0;color:var(--ink-2);cursor:pointer;font-family:var(--sans);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;padding:1rem;transition:color .2s}
.lb button:hover{color:var(--ink)}
.lb .close{top:.8rem;right:1rem}
.lb .prev{left:.4rem;top:50%;transform:translateY(-50%)}
.lb .next{right:.4rem;top:50%;transform:translateY(-50%)}
.lb button svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.2;display:block}
.lb .sr-count{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lb .counter{position:absolute;left:1.4rem;top:1.5rem;font-family:var(--sans);font-size:.66rem;letter-spacing:.2em;color:var(--ink-3)}
html.lb-open,body.lb-open{overflow:hidden}
.lb{touch-action:pinch-zoom}
.lb figure{transition:opacity .15s}
.lb.loading figure{opacity:.35}
@media (max-width:720px){.lb{padding:3.2rem .8rem 2.6rem}.lb img{max-height:calc(100vh - 7.5rem)}.lb .prev,.lb .next{top:auto;bottom:.2rem;transform:none}.lb .prev{left:.6rem}.lb .next{right:.6rem}.lb figcaption{font-size:.95rem}}
@media (max-width:600px){.site-header .wrap{padding-top:.8rem;padding-bottom:.7rem}.brand{font-size:1.05rem}.brand small{display:none}.nav{gap:.2rem 1rem;font-size:.66rem;letter-spacing:.14em}.grid{grid-template-columns:repeat(2,1fr);gap:1.6rem .9rem}.work figcaption{font-size:.9rem;margin-top:.5rem}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
@media print{body,body.dark{--bg:#fff;--bg-2:#fff;--ink:#111;--ink-2:#333;--ink-3:#555;--accent:#5a4520;--line:rgba(0,0,0,.25)}.site-header,.lb,.site-footer{display:none}body{background:#fff;color:#111}.hero-in{display:block}.hero .image{max-width:60%;box-shadow:none}.acasa .brand{opacity:1}}
