@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Quicksand:wght@300..700&family=Spectral:ital,wght@0,400;1,400&display=swap";*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow-x:hidden;overflow-y:auto;scroll-snap-type:y mandatory;scroll-behavior:smooth;background:#000}body{font-family:Quicksand,sans-serif;color:#fff;-webkit-font-smoothing:antialiased}.scroll-container{width:100%;display:flex;flex-direction:column}.kanso-sample-banner{position:fixed;top:0;left:0;right:0;z-index:10000;padding:.45rem 1rem;text-align:center;font-size:.72rem;font-weight:500;letter-spacing:.04em;color:#ffffffeb;background:#0f0f14e0;border-bottom:1px solid rgba(255,255,255,.08)}.exhibit-back{top:calc(1.5rem + 28px)}@media(prefers-reduced-motion:reduce){html,body,#root{scroll-behavior:auto}.exhibit-canvas{opacity:.15}.section-overlay:after{content:"Motion reduced: static exhibit preview";display:block;margin-top:.75rem;font-size:.75rem;opacity:.65}}.exhibit-section{position:relative;width:100vw;height:100vh;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always}.exhibit-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.section-overlay{position:absolute;top:2.2rem;left:50%;transform:translate(-50%);width:90%;max-width:750px;text-align:center;pointer-events:none;z-index:10}.exhibit-chapter{font-size:.72rem;font-weight:700;letter-spacing:.28em;color:#ffffffa6;text-transform:uppercase;display:block;margin-bottom:.3rem;text-shadow:0 2px 8px rgba(0,0,0,.8)}.exhibit-title{font-family:Playfair Display,serif;font-size:clamp(1.8rem,3.8vw,3.2rem);font-weight:700;color:#fff;letter-spacing:.1em;margin:0;text-shadow:0 4px 20px rgba(0,0,0,.85)}.exhibit-story{font-family:Spectral,serif;font-size:clamp(.95rem,1.8vw,1.2rem);font-style:italic;color:#ffffffe6;margin:.6rem auto 0;line-height:1.55;text-shadow:0 2px 12px rgba(0,0,0,.95);max-width:620px}.exhibit-hint{font-size:.72rem;color:#ffffff80;margin-top:.8rem;letter-spacing:.18em;text-transform:uppercase;text-shadow:0 2px 6px rgba(0,0,0,.8)}.exhibit-nav{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);display:flex;gap:.35rem;z-index:20;background:#000000bf;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:.4rem .6rem;border-radius:50px;border:1px solid rgba(255,255,255,.25);max-width:95vw;overflow-x:auto;scrollbar-width:none;box-shadow:0 8px 32px #00000080}.exhibit-nav::-webkit-scrollbar{display:none}.exhibit-btn{font-family:Quicksand,sans-serif;font-size:.8rem;font-weight:600;padding:.5rem 1.2rem;border:1px solid transparent;border-radius:50px;background:transparent;color:#ffffffb3;cursor:pointer;transition:all .25s ease;letter-spacing:.04em;white-space:nowrap}.exhibit-btn:hover{color:#fff;background:#ffffff26}.exhibit-btn.active{background:#ffffff40;color:#fff;border-color:#fff6}.exhibit-back{position:fixed;top:1.5rem;left:1.5rem;color:#fff;background:#0009;padding:.4rem 1rem;border-radius:30px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-decoration:none;font-size:.85rem;font-weight:600;letter-spacing:.04em;z-index:20;transition:all .25s ease;box-shadow:0 4px 16px #0006}.exhibit-back:hover{background:#fff3;color:#fff}.exhibit-footer{position:fixed;bottom:.75rem;left:50%;transform:translate(-50%);z-index:20;pointer-events:none;text-align:center;width:min(92vw,40rem)}.exhibit-footer p{margin:0;font-size:.68rem;letter-spacing:.04em;color:#ffffff73}@media(prefers-reduced-motion:reduce){html,body,#root{scroll-behavior:auto}}.frosted-glass-overlay{position:absolute;inset:0;pointer-events:none;backdrop-filter:blur(9px) saturate(140%) brightness(1.05);-webkit-backdrop-filter:blur(9px) saturate(140%) brightness(1.05);background:radial-gradient(circle at 50% 50%,#ffffff05,#00000026),repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(255,255,255,.015) 3px,rgba(255,255,255,.015) 6px);box-shadow:inset 0 0 100px #000000b3;border:1px solid rgba(255,255,255,.08);z-index:2}@media(max-width:600px){.exhibit-nav{gap:.2rem;padding:.3rem}.exhibit-btn{font-size:.65rem;padding:.4rem .8rem}.exhibit-title{font-size:1.5rem}}
