.hero-art .hero-brush{transform:none}
/* One 1440 × 720 poster coordinate system, fitted to the desktop viewport. */
@media(min-width:0px){
 :root{--poster-u:min(.06944444vw,.13888889svh);--poster-x:calc((100vw - 1440 * var(--poster-u))/2);--poster-y:calc((100svh - 720 * var(--poster-u))/2)}
 .hero-composition::before{display:none}
 .hero-art .hero-brush{left:calc(var(--poster-x) + 132 * var(--poster-u));top:calc(var(--poster-y) - 253 * var(--poster-u));width:calc(1211 * var(--poster-u));height:calc(1211 * var(--poster-u));object-fit:contain}
 .hero-composition .hero-title-ja{left:calc(var(--poster-x) - 10 * var(--poster-u));top:calc(var(--poster-y) + 111 * var(--poster-u));width:calc(246 * var(--poster-u));height:calc(608 * var(--poster-u));visibility:visible}
 .hero-composition .hero-venue{left:calc(var(--poster-x) + 184 * var(--poster-u));top:calc(var(--poster-y) + 412 * var(--poster-u));bottom:auto;width:calc(206 * var(--poster-u));height:calc(137 * var(--poster-u))}
 .hero-composition .hero-dates{left:calc(var(--poster-x) + 1199 * var(--poster-u));right:auto;top:calc(var(--poster-y) + 425 * var(--poster-u));bottom:auto;width:calc(181 * var(--poster-u));height:calc(175 * var(--poster-u))}
 .hero-composition .hero-wordmark{left:calc(var(--poster-x) + 839.5 * var(--poster-u));right:auto;top:calc(var(--poster-y) + 657.68 * var(--poster-u));bottom:auto;width:calc(599.5 * var(--poster-u));height:calc(62.32 * var(--poster-u))}
}
@media(min-width:900px){
 #works{height:100svh;min-height:100svh;padding:0;scroll-margin-top:-90px}
 #works>.wave-gallery{height:100%;min-height:0}
 #works>.wave-gallery.is-list-mode{height:auto}
 #works .wave-toolbar{top:6svh}
 #works .spatial-gallery .wave-stage{position:absolute;left:0;top:12svh;width:100%;height:72svh;margin:0}
 #works .spatial-gallery .wave-caption{top:auto;bottom:9svh;z-index:4}
 #works .spatial-gallery .wave-controls{top:auto;bottom:3svh;margin:0;z-index:4}
 #works:has(.is-list-mode){height:auto;min-height:100svh;padding-bottom:120px}
}
#announce.announce-normal-flow::after{display:none}
.announce-fixed-label{position:fixed;right:0;bottom:0;width:min(649px,80vw);height:95px;background:url('../assets/labels/announce.svg') no-repeat right bottom;background-size:contain;pointer-events:none;z-index:5}
/* Near-neutral charcoal with the same accent as the site navigation tabs. */
:root{--shared-tab-green:#54bc4e}
.selection-highlight{background:var(--shared-tab-green)}
#announce.announce{--announce-line:#ffffff2e;background:#141715;color:#eef5f1}
#announce .announce-intro,#announce .event-notice,#announce .fund-card-bottom{color:#d3e1db}
#announce .fund-card figure{position:relative;padding:0;border:0;overflow:hidden;background:transparent}
#announce .fund-card img,#announce .fund-card:hover img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transform:none;transition:none}
#announce .announce-index,#announce .event-notice time,#announce .notice-date{color:#fff}
#announce .talk-detail-action,#announce .fund-card-bottom a{background:var(--shared-tab-green);color:#fff;transition:background .2s,color .2s}
#announce .talk-detail-action:hover,#announce .talk-detail-action:focus-visible,
#announce .fund-card-bottom a:hover,#announce .fund-card-bottom a:focus-visible{background:#278820;color:#fff}
#announce .event-notice:focus-visible,#announce .talk-detail-action:focus-visible,#announce .fund-card-bottom a:focus-visible{outline:2px solid #b3d6bf;outline-offset:5px}
.announce-fixed-label{filter:brightness(0) saturate(100%) invert(79%) sepia(12%) saturate(389%) hue-rotate(91deg);opacity:.14}
#announce.announce-normal-flow{height:auto;overflow:clip;padding-bottom:110px}
#announce.announce-normal-flow .announce-chapter{opacity:1;transform:none}
#members.members-natural{position:relative;min-height:100svh;height:auto;display:flex;align-items:center;overflow:hidden;padding:6vh 2%;}
#members.members-natural .member-art{position:relative;width:min(100%,calc(86svh * 3988 / 3359));height:auto;aspect-ratio:3988/3359;margin:0 auto;opacity:1;filter:none;transform:none}
#members.members-natural #marker-canvas{width:100%;height:100%;}
#archives.archives-natural{position:relative;min-height:85svh;padding:6vh 3% 10vh;}
#archives.archives-natural .archive-stage{position:relative;left:auto;top:auto;transform:none;width:100%;height:65svh;margin:0;}
#archives.archives-natural .archive-columns{transition:none}
#archives.archives-natural{min-height:0;padding-bottom:calc(13px + clamp(60px,7.15vw,103px) + 12px)}
#archives.archives-natural::before{top:auto;bottom:12px;left:-8px;width:min(645px,85vw);height:clamp(60px,7.15vw,103px);background-size:contain}
.members-flow-particles{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:8}
#members.members-natural,#archives.archives-natural{border:0}
#access.access{border-bottom:0}
.selection-highlight{transition:transform .2s ease,width .2s ease,height .2s ease}
#works .wave-filters button,#archives .archive-tabs button{border-color:transparent!important;box-shadow:none}
#works .wave-filters button:focus:not(:focus-visible),#archives .archive-tabs button:focus:not(:focus-visible){outline:none}
#works .wave-filters button:focus-visible,#archives .archive-tabs button:focus-visible{outline:1px dashed #052d03;outline-offset:3px}
#works .wave-filters[data-pointer-focus] button:focus,#archives .archive-tabs[data-pointer-focus] button:focus{outline:none}
html[data-prototype="works"] #announce,html[data-prototype="works"] #access,html[data-prototype="works"] #members,html[data-prototype="works"] #archives,
html[data-prototype="announce"] #access,html[data-prototype="announce"] #members,html[data-prototype="announce"] #archives,
html[data-prototype="members-archives"] #announce,html[data-prototype="members-archives"] #access{display:none!important}
@media(prefers-reduced-motion:reduce){.members-flow-particles{display:none}.selection-highlight{transition:none}}

.birth-intro{height:150svh}
.skip-link{position:fixed;left:16px;top:12px;z-index:1000;padding:12px 18px;background:#fff;color:#052d03;transform:translateY(-150%);font:600 16px/1.3 'Zen Kaku Gothic Antique',sans-serif}
.skip-link:focus-visible{transform:translateY(0);outline:3px solid #278820;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.birth-intro{height:100svh}}

#contents .footer-social a{display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:6px;transition:opacity .2s ease}
#contents .footer-social a:hover{opacity:.65}
#contents .footer-social a:focus-visible{outline:2px solid #278820;outline-offset:2px}
#contents .footer-social img{margin:0}

/* A soft edge and a short reveal keep the notice readable without a sudden pop. */
#announce .event-notice[data-notice="event"]{height:auto;min-height:73px;grid-template-columns:92px minmax(0,1fr) 18px;margin-bottom:12px;padding:16px 18px;border:1px solid #ffffff55;border-radius:8px;background:#ffffff0a}
#announce .event-notice[data-notice="event"]:hover{background:#ffffff12}
#announce-detail{border-radius:10px}
#announce-detail[open]{animation:announce-detail-in .42s cubic-bezier(.16,1,.3,1) both}
#announce-detail[open]::backdrop{animation:announce-backdrop-in .3s ease-out both}
#announce-detail.is-closing{animation:announce-detail-out .18s ease-in forwards}
#announce-detail.is-closing::backdrop{animation:announce-backdrop-out .18s ease-in forwards}
@keyframes announce-detail-in{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
@keyframes announce-detail-out{from{opacity:1;transform:none}to{opacity:0;transform:translateY(8px) scale(.99)}}
@keyframes announce-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes announce-backdrop-out{from{opacity:1}to{opacity:0}}
@media(max-width:600px){#announce .event-notice[data-notice="event"]{grid-template-columns:78px minmax(0,1fr) 16px;padding:14px 12px}}
@media(prefers-reduced-motion:reduce){#announce-detail[open],#announce-detail[open]::backdrop,#contents .footer-social a{animation:none;transition:none}}

/* Phones list the members as plain text instead of the marker drawing. */
#members .member-list{display:none}
@media(max-width:767px){
 #members.members-natural{display:block;min-height:0;padding:72px 7% 120px}
 #members.members-natural .member-art{display:none}
 #members .member-list{display:grid;gap:28px;margin:0;font-family:'Zen Kaku Gothic Antique',sans-serif}
 #members .member-list dt{margin:0 0 10px;color:#64B64E;font-size:15px;font-weight:700;letter-spacing:.06em}
 #members .member-list dd{display:inline-block;margin:0 1.1em 6px 0;color:var(--ink);font-size:14px;line-height:1.7}
}
