.open-art-room--salon { margin:0!important; background:var(--eg-paper); }
.art-salon { max-width:1440px; margin:auto; padding:64px 5vw 0; }
.art-salon *, .art-salon *::before { box-sizing:border-box; }
.art-salon__eyebrow { font-size:11px; font-weight:700; letter-spacing:.14em; color:var(--eg-clay,#c96044); margin:0 0 20px; }
.art-salon__intro { padding-bottom:42px; }
.art-salon__intro h1 { font-family:var(--ieum-font-body); font-size:clamp(32px,3.8vw,54px); font-weight:300; letter-spacing:-.055em; line-height:1.25; margin:0; word-break:keep-all; }
.art-salon__intro h1 strong { font-weight:700; }
.art-salon__welcome { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-top:28px; }
.art-salon__welcome p { font-size:16px; line-height:1.8; margin:0; word-break:keep-all; }
.art-salon__welcome>span { font-size:12px; color:var(--eg-ink); opacity:.65; }
.art-salon__shelf { display:grid; grid-template-columns:1.25fr .8fr 1fr; column-gap:42px; row-gap:64px; align-items:end; border-top:1px solid var(--eg-line); padding-top:40px; }
.art-salon__work { display:block; min-width:0; text-decoration:none; color:inherit; scroll-margin-top:110px; }
.art-salon__work:nth-of-type(3n+2) { padding-bottom:42px; }
.art-salon__image { display:flex; justify-content:center; align-items:end; min-height:140px; }
.art-salon__image img { display:block; width:100%; height:auto; max-height:340px; object-fit:contain; transition:transform .25s; }
.art-salon__work:hover img { transform:translateY(-5px); }
.art-salon__caption { display:flex; justify-content:space-between; align-items:start; gap:12px; padding:18px 0 10px; border-bottom:1px solid var(--eg-line); }
.art-salon__caption strong { display:block; font-size:19px; line-height:1.45; letter-spacing:-.035em; word-break:keep-all; }
.art-salon__caption small { display:block; font-size:12px; line-height:1.65; opacity:.68; margin-top:5px; }
.art-salon__open { font-size:23px; color:var(--eg-clay); }
.art-salon__work[aria-expanded=true] .art-salon__caption { border-bottom:3px solid var(--eg-clay); }
.art-salon__work[aria-expanded=true] .art-salon__open { transform:rotate(90deg); }
.art-salon a:focus-visible,.art-salon button:focus-visible { outline:3px solid var(--eg-clay); outline-offset:6px; }
.art-salon__detail { grid-column:1/-1; min-width:0; padding:40px 0 56px; border-top:2px solid var(--eg-ink); border-bottom:1px solid var(--eg-line); scroll-margin-top:90px; }
.art-salon__detail[hidden] { display:none; }
.wp-site-blocks:has(.open-art-room--salon)>header.wp-block-template-part { position:sticky; top:0; z-index:100; isolation:isolate; background:transparent; }
.wp-site-blocks:has(.open-art-room--salon)>header.wp-block-template-part::before { content:''; position:absolute; inset:0; z-index:-1; background:rgba(247,244,238,.86); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); pointer-events:none; }
.wp-site-blocks:has(.open-art-room--salon)>header.wp-block-template-part .site-header { position:static; background:transparent; backdrop-filter:none; -webkit-backdrop-filter:none; }
.art-salon__return-bar { position:fixed; right:clamp(16px,3vw,44px); bottom:calc(20px + env(safe-area-inset-bottom)); z-index:40; display:flex; padding:0; margin:0; border:0; }
.art-salon__return-bar[hidden],body:has(.wp-block-navigation__responsive-container.is-menu-open) .art-salon__return-bar { display:none; }
.art-salon .art-salon__return-bar button { min-height:44px; min-width:76px; padding:9px 14px; border:1px solid rgba(29,39,33,.22); background:rgba(247,244,238,.94); color:var(--eg-ink); border-radius:24px; font-size:13px; line-height:1.4; box-shadow:0 2px 9px rgba(29,39,33,.07); }
.art-salon__detail--return-bar .art-salon__detail-head>button { display:none; }
.art-salon__detail--return-bar :is(h2,h3,h4) { scroll-margin-top:86px; }
.art-salon__detail-head { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:30px; }
.art-salon__detail-head h2 { font-size:clamp(28px,3.4vw,46px); line-height:1.25; margin:0; letter-spacing:-.045em; word-break:keep-all; }
.art-salon__detail-head h2:focus { outline:none; }
.art-salon__detail-head .art-salon__mood { font-size:14px; line-height:1.7; letter-spacing:.025em; margin-bottom:12px; word-break:keep-all; }
.art-salon__detail-head p:last-child { font-size:14px; margin:12px 0 0; }
.art-salon button { font:inherit; font-size:13px; background:none; border:0; border-bottom:1px solid var(--eg-ink); padding:10px 0; cursor:pointer; color:var(--eg-ink); }
.art-salon__painting { margin:0; }
.art-salon__painting img { width:100%; height:auto; max-height:820px; display:block; object-fit:contain; }
.art-salon__painting figcaption { font-size:12px; line-height:1.7; opacity:.65; padding-top:16px; text-align:center; overflow-wrap:anywhere; }
.art-salon__clues { background:var(--eg-ink); color:var(--eg-paper); padding:36px; margin-top:36px; }
.art-salon__clues h3 { margin:0 0 25px; font-size:26px; letter-spacing:-.04em; }
.art-salon__clues ol { list-style:none; counter-reset:clue; display:grid; grid-template-columns:repeat(3,1fr); gap:32px; padding:0; margin:0; }
.art-salon__clues li { counter-increment:clue; font-size:16px; line-height:1.9; word-break:keep-all; border-top:1px solid #ffffff45; padding-top:16px; }
.art-salon__clues li::before { content:'0' counter(clue); display:block; color:#dcb77c; font-size:12px; margin-bottom:12px; }
.art-salon__essay { display:grid; grid-template-columns:1fr 2fr; gap:72px; padding:56px 24px; }
.art-salon__essay h3 { font-size:30px; line-height:1.4; margin:0; letter-spacing:-.04em; word-break:keep-all; }
.art-salon__essay p { font-size:17px; line-height:2; margin:0 0 22px; word-break:keep-all; }
.art-salon__essay section { margin-top:38px; }
.art-salon__essay h4 { font-size:24px; line-height:1.5; letter-spacing:-.035em; margin:0 0 14px; word-break:keep-all; }
.art-salon__question { border-block:1px solid var(--eg-line); padding:32px 24px; }
.art-salon__question>p:last-child { font-size:clamp(22px,2.3vw,30px); line-height:1.65; max-width:850px; margin:0; word-break:keep-all; }
.art-salon__sources { padding:30px 24px 0; }
.art-salon__sources nav { display:flex; flex-wrap:wrap; gap:20px; margin-bottom:25px; }
.art-salon__sources a { color:var(--eg-ink); font-size:14px; text-underline-offset:5px; }
.art-salon__sources p { font-size:12px; line-height:1.8; overflow-wrap:anywhere; margin:8px 0; opacity:.7; }
.art-salon__sources button { margin-top:20px; }
.art-salon__foot { display:flex; justify-content:space-between; gap:32px; padding:44px 0; margin-top:50px; border-top:1px solid var(--eg-line); font-size:13px; line-height:1.8; }
@media(max-width:900px) { .art-salon__shelf { column-gap:24px; } .art-salon__essay { gap:32px; } }
@media(max-width:700px) {
 .art-salon { padding:36px 22px 0; }
 .art-salon__intro h1 { font-size:32px; }
 .art-salon__welcome { display:block; margin-top:22px; }
 .art-salon__welcome p { font-size:14px; }
 .art-salon__welcome>span { display:block; margin-top:18px; }
 .art-salon__shelf { grid-template-columns:1fr; gap:32px; padding-top:26px; }
 .art-salon__work:nth-of-type(3n+2) { padding-bottom:0; }
 .art-salon__work:nth-of-type(2n) { width:86%; justify-self:end; }
 .art-salon__image img { max-height:390px; }
 .art-salon__caption strong { font-size:18px; }
 .art-salon__detail { padding-top:26px; scroll-margin-top:78px; }
 .art-salon__detail-head { display:block; }
 .art-salon__detail-head button { margin-top:16px; }
 .art-salon__clues { margin-top:26px; padding:26px 22px; }
 .art-salon__clues h3 { font-size:23px; }
 .art-salon__clues ol { grid-template-columns:1fr; gap:20px; }
 .art-salon__clues li { font-size:16px; }
 .art-salon__essay { display:block; padding:34px 0; }
 .art-salon__essay header { margin-bottom:24px; }
 .art-salon__essay h3 { font-size:27px; }
 .art-salon__essay p { font-size:16px; line-height:1.95; }
 .art-salon__essay h4 { font-size:23px; }
 .art-salon__question,.art-salon__sources { padding-inline:0; }
 .art-salon__foot { display:block; margin-top:32px; }
}
@media(prefers-reduced-motion:reduce) { .art-salon__image img { transition:none; } }
