:root{color-scheme:dark;--paper:#28213d;--ink:#fff8fc;--accent:#ffd268;--muted:#ead9f1;--rule:#b783c2;--ochre:#ffcb58;--olive:#91f0eb;--mat:#443258;--night:#22172f}
*{box-sizing:border-box}body{margin:0 auto;width:min(91%,1440px);background:var(--paper);color:var(--ink);font:18px/1.55 Georgia,serif}a{color:var(--accent);text-underline-offset:.24em}a:hover{text-decoration-thickness:2px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}header,footer{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:17px 0}header{border-bottom:2px solid var(--ochre)}.brand{color:var(--ink);text-decoration:none;font-size:clamp(24px,3vw,36px);letter-spacing:-.04em}nav,footer div{display:flex;flex-wrap:wrap;gap:clamp(14px,3vw,44px)}nav a{color:var(--ink);text-decoration:none}nav a:hover{text-decoration:underline;color:var(--accent)}
section{padding:clamp(34px,5vw,70px) 0;border-bottom:1px solid var(--rule);scroll-margin-top:1rem}h1,h2,h3,p,figure{margin:0}p+p{margin-top:1em}.kicker{font:600 12px/1.4 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.23em;color:var(--olive);margin-bottom:15px}h1,h2,h3{font-weight:400;line-height:1.02;letter-spacing:-.045em}h1{font-size:clamp(70px,9.5vw,145px)}h2{font-size:clamp(40px,5vw,76px);margin-bottom:24px}h3{font-size:clamp(25px,3vw,36px);margin:25px 0 9px}.hero{display:grid;grid-template-columns: .95fr 1.25fr;gap:clamp(24px,5vw,75px);align-items:center;border-color:var(--ochre)}.hero img{width:100%;height:clamp(350px,39vw,560px);object-fit:contain;background:var(--night)}.intro{font-size:clamp(20px,2.1vw,29px);line-height:1.38;max-width:27em;margin-top:22px}.jump{display:inline-block;font-size:23px;margin-top:22px}.jump span{margin-left:.3em}
img{display:block;max-width:100%}.painting{display:block}.painting img{width:100%}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 26px}.grid img{width:100%;aspect-ratio:1.15;object-fit:contain;background:var(--mat)}.grid .painting:hover img{outline:1px solid var(--accent);outline-offset:-1px}.small,.social{grid-template-columns:repeat(3,minmax(0,1fr))}.small img,.social img{aspect-ratio:1}.split{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(24px,6vw,85px)}figcaption{font-size:16px;line-height:1.35;padding-top:8px}figcaption strong{font-weight:normal}small{display:block;font:13px/1.5 system-ui,sans-serif;color:var(--muted)}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.filters button{border:1px solid var(--rule);background:transparent;color:var(--ink);padding:5px 13px;font-size:15px}.filters button[aria-pressed=true]{background:var(--olive);color:var(--night);border-color:var(--olive)}
.timeline,.plain{padding:0;list-style:none}.timeline li{display:grid;grid-template-columns:65px 1fr;gap:10px;border-top:1px solid var(--rule);padding:9px 0}.timeline time{color:var(--accent);font-variant-numeric:tabular-nums}.plain li{margin-bottom:6px}.resources{margin-top:22px}footer{font-size:15px;padding:22px clamp(16px,3vw,44px);background:var(--night);border-top:2px solid var(--ochre)}footer a,footer .brand,footer small{color:var(--ink)}footer a:focus-visible{outline-color:var(--ochre)}
dialog{width:min(950px,94vw);max-height:94vh;overflow:auto;border:0;background:var(--paper);color:var(--ink);padding:38px 18px 14px;text-align:center}dialog::backdrop{background:#22172fed}dialog img{margin:0 auto;max-height:75vh;object-fit:contain}.close{position:absolute;right:12px;top:3px;color:var(--ink);background:transparent;border:0;font-size:29px;line-height:1}.visually-hidden,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}
@media(max-width:760px){.hero,.split{grid-template-columns:1fr}.hero img{height:auto;max-height:65vh}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 13px}.hero h1 br{display:none}.hero h1{font-size:clamp(54px,12vw,88px);line-height:.98}.hero h1 br:after{content:" "}.intro{margin-top:15px}header{align-items:start}nav{gap:11px 17px}}@media(max-width:420px){body{font-size:17px}figcaption{font-size:14px}.hero h1{max-width:7ch}}

html{background:var(--paper)}
@font-face{font-family:"Great Vibes";src:url("fonts/great-vibes-latin.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
.brand,.hero h1{font-family:"Great Vibes","Segoe Script",cursive;letter-spacing:0}
.brand{font-size:clamp(34px,4vw,49px);line-height:1.2}
.hero{background:radial-gradient(ellipse at 91% 7%,#ffc04d 0%,transparent 35%),radial-gradient(ellipse at 84% 92%,#23b8c7 0%,transparent 41%),radial-gradient(ellipse at 12% 3%,#f24887 0%,transparent 47%),linear-gradient(135deg,#7c265f,#24637e 57%,#ed5671);padding-inline:clamp(16px,4vw,58px)}
.hero>div{background:#28213d;padding:clamp(20px,4vw,48px);border-left:4px solid #f768a2}
.hero h1{font-size:clamp(65px,9vw,128px);line-height:.87;padding:.12em .11em .06em}
.hero figcaption{display:table;background:var(--night);padding:6px 11px}
section:not(.hero) .kicker{color:#ffa7cc}
section:not(.hero){border-color:#916697}
@media(max-width:760px){.hero h1{font-size:clamp(51px,13vw,100px);max-width:none}.hero h1 br{display:none}}