@font-face{font-family:Inter;src:url('fonts/inter-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Playfair;src:url('fonts/playfair-roman.woff2') format('woff2');font-style:normal;font-weight:400 900;font-display:swap}
@font-face{font-family:Playfair;src:url('fonts/playfair-italic.woff2') format('woff2');font-style:italic;font-weight:400 900;font-display:swap}
:root{--paper:#faf9f5;--ink:#292622;--muted:#6d685f;--line:#e6e3dc;--accent:#955e49;color-scheme:light;font-family:Inter,Arial,sans-serif;background:var(--paper);color:var(--ink)}
*,*::before,*::after{box-sizing:border-box}
body,h1,p,figure{margin:0}
body{min-width:280px;font-size:14px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
:is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:6px}
::selection{background:#ddc6b9;color:#292622}
.wrap{width:min(1440px,calc(100% - 112px));margin-inline:auto}
.page{min-height:100svh;display:flex;flex-direction:column}
.masthead{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:25px;border-bottom:1px solid var(--line)}
.brand{display:flex;flex-direction:column;align-items:center;gap:6px}
.brand img{display:block;width:212px;height:auto}
.brand>span{font-size:8px;letter-spacing:.26em;text-transform:uppercase;color:var(--muted)}
.opening-status{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:30px;padding:9px 15px;font-size:10px;letter-spacing:.04em;background:#ffffff70;white-space:nowrap}
.opening-status>span{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #955e490c}
.hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;flex:1;padding-block:40px}
.hero-copy{grid-column:span 7;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;gap:36px;padding:16px clamp(32px,5vw,88px) 12px 0}
.eyebrow{font-size:9px;letter-spacing:.15em;font-weight:500;text-transform:uppercase;color:var(--muted);line-height:1.8}
.invitation{display:flex;gap:14px;align-items:center}
.invitation>span{height:1px;width:30px;flex-shrink:0;background:var(--accent)}
h1{font-family:Playfair,Georgia,serif;font-size:clamp(62px,6.5vw,100px);line-height:1.07;font-weight:400;letter-spacing:-.06em;margin-block:28px 25px}
h1 em{font-weight:400;color:var(--accent)}
.intro{font-size:16px;line-height:1.9;color:#555149}
.announcement{font-size:13px;line-height:1.9;color:var(--muted);max-width:43ch;margin-top:22px}
.closer-link{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid var(--ink);min-height:49px;font-size:11px;font-weight:500;margin-top:22px;padding-block:8px}
.closer-link>span:last-child{font-size:21px;font-weight:400;transition:transform .25s ease-out}
.closer-link:is(:hover,:focus-visible)>span:last-child{transform:translate(3px,-3px)}
.copy-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;padding-top:18px;border-top:1px solid var(--line)}
.copy-foot .eyebrow{font-size:8px;color:var(--accent)}
.chapter{font-size:10px;color:var(--muted)}
.featured-art{grid-column:span 5;display:flex;flex-direction:column;align-items:center;min-width:0;border-left:1px solid var(--line);padding-left:clamp(28px,4vw,64px)}
.painting{display:block;position:relative;overflow:hidden;width:fit-content;max-width:100%;box-shadow:0 25px 50px -15px #0004,0 8px 18px -12px #0004}
.painting::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px #0002;pointer-events:none}
.painting>img{display:block;width:auto;height:auto;max-width:100%;max-height:min(56svh,520px);object-fit:contain;transition:transform .85s ease-out}
.painting:is(:hover,:focus-visible)>img{transform:scale(1.025)}
.image-open{position:absolute;bottom:16px;right:16px;display:grid;place-items:center;width:40px;height:40px;background:#fffffff0;backdrop-filter:blur(12px);border:1px solid #fff8;border-radius:50%;font-size:21px}
.placard{display:flex;align-items:center;gap:17px;background:#fff;border:1px solid var(--line);padding:14px 18px;width:min(100%,440px);margin-top:18px}
.figure-number{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;gap:4px;min-width:42px;padding-right:18px;border-right:1px solid var(--line)}
.figure-number>span{color:var(--muted);font-size:8px;letter-spacing:.13em;text-transform:uppercase}
.figure-number>strong{font-size:17px;font-weight:400;letter-spacing:-.03em}
.placard>div{min-width:0}
.artist{display:block;font-size:9px;color:var(--muted)}
.placard>div>strong{display:block;font-size:12px;font-weight:500;line-height:1.5;margin-block:2px}
.art-date{display:block;font-size:9px;color:var(--muted)}
.footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 24px;border-top:1px solid var(--line);padding-block:21px;font-size:9px;line-height:1.8;color:var(--muted)}
.footer>a{display:inline-flex;gap:20px;align-items:center;min-height:28px}
.footer>a:hover{text-decoration:underline;text-underline-offset:5px}
.footer>a>span{font-size:15px}
.skip-link{position:fixed;top:8px;left:8px;z-index:10;background:var(--ink);color:#fff;padding:12px 18px;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.art-viewer{border:0;padding:20px 24px;position:fixed;inset:0;width:min(1200px,calc(100% - 48px));height:calc(100dvh - 48px);max-height:none;max-width:none;margin:auto;background:var(--paper);color:var(--ink)}
.art-viewer[open]{display:flex;flex-direction:column}
.art-viewer:not([open]){display:none}
.art-viewer::backdrop{background:#1a1815e8}
.viewer-header{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;min-height:44px}
.viewer-header button{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;font-size:29px;line-height:1}
.art-viewer>img{display:block;flex:1;min-height:0;width:100%;object-fit:contain;height:auto;padding-block:16px}
.viewer-label{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 20px;text-align:center;font-size:10px;color:var(--muted);padding-top:4px}
.viewer-label>strong{font-size:12px;color:var(--ink);font-weight:500}
@media(min-width:1700px){.wrap{width:min(1600px,calc(100% - 160px))}h1{font-size:108px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero-copy{padding-right:36px}h1{font-size:clamp(57px,6.7vw,74px)}.intro{font-size:14px}.announcement{font-size:12px}.featured-art{padding-left:32px}.copy-foot{gap:8px 15px}.chapter{font-size:9px}}
@media(max-width:800px){.wrap{width:min(620px,calc(100% - 40px))}.masthead{padding-block:22px}.brand img{width:180px}.brand>span{font-size:7px}.opening-status{font-size:9px;padding:8px 11px;gap:8px}.hero{grid-template-columns:minmax(0,1fr);padding-block:32px;gap:32px}.hero-copy,.featured-art{grid-column:1}.hero-copy{padding:0;gap:28px}h1{font-size:clamp(52px,10.5vw,80px);margin-block:24px}.intro{font-size:15px}.announcement{font-size:13px;max-width:45ch}.closer-link{margin-top:16px}.featured-art{border-left:0;padding:0}.painting>img{max-height:520px}.placard{max-width:440px}.footer{font-size:9px;gap:12px 20px;padding-block:18px}.footer>p:nth-child(2){display:none}.art-viewer{width:100%;height:100dvh;padding:16px}.viewer-label{display:grid;gap:4px}}
@media(max-width:360px){.brand img{width:154px}.opening-status{font-size:8px;padding-inline:9px}h1{font-size:48px}.intro{font-size:14px}.eyebrow{font-size:8px;letter-spacing:.12em}.placard{padding:13px;gap:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}.painting:is(:hover,:focus-visible)>img,.closer-link:is(:hover,:focus-visible)>span:last-child{transform:none}}
