.art-page{max-width:var(--content-width);margin:0 auto;padding:48px 24px 80px}.art-lede{font-family:var(--font-display);font-style:italic;font-size:clamp(1.05rem,1.8vw,1.25rem);color:var(--text-mid);line-height:1.65;margin-bottom:40px;max-width:580px}.slideshow{position:relative;background:var(--paper-dark);border:1px solid var(--border-dark);border-radius:var(--radius);box-shadow:var(--shadow-warm);overflow:hidden;user-select:none;isolation:isolate}.slideshow__stage{position:relative;min-height:320px;display:flex;align-items:center;justify-content:center;background:var(--paper-mid);isolation:isolate}.slideshow__img{display:block;width:100%;height:auto;max-height:72vh;object-fit:contain;opacity:1;transition:opacity .18s ease}.slideshow__img.is-loading{opacity:0}.slideshow__loader{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s ease;pointer-events:none}.slideshow__loader.is-visible{opacity:1}.slideshow__loader-dot{width:6px;height:6px;border-radius:50%;background:var(--border-dark);margin:0 3px;animation:loader-pulse 1.1s ease-in-out infinite}.slideshow__loader-dot:nth-child(2){animation-delay:.18s}.slideshow__loader-dot:nth-child(3){animation-delay:.36s}@keyframes loader-pulse{0%,to{opacity:.3;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.slideshow__meta{position:absolute;bottom:0;left:0;right:0;padding:48px 18px 14px;background:linear-gradient(to top,rgba(58,46,30,.65),transparent);opacity:0;transition:opacity .18s ease;pointer-events:none}.slideshow__stage:hover .slideshow__meta,.slideshow__stage.meta-open .slideshow__meta{opacity:1}.slideshow__filename{font-family:var(--font-mono);font-size:11px;color:#f5f0e8e6;display:block;margin-bottom:2px}.slideshow__ext{font-family:var(--font-mono);font-size:10px;color:#f5f0e899}.slideshow__arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid var(--border-dark);border-radius:var(--radius);background:#f5f0e8e0;backdrop-filter:blur(4px);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--bark-dark);z-index:10;opacity:0;transition:opacity .16s ease,background var(--transition),color var(--transition);line-height:1}.slideshow__stage:hover .slideshow__arrow{opacity:1}.slideshow__arrow:hover{background:var(--bark-dark);color:var(--paper);border-color:var(--bark-dark)}.slideshow__arrow--prev{left:12px}.slideshow__arrow--next{right:12px}.slideshow__arrow:disabled{opacity:0!important;pointer-events:none}.slideshow__bar{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-top:1px solid var(--border);background:var(--paper-dark);gap:16px}.slideshow__counter{font-family:var(--font-mono);font-size:11px;color:var(--text-light);white-space:nowrap;flex-shrink:0}.slideshow__dots{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center;flex:1}.slideshow__dot{width:6px;height:6px;border-radius:50%;background:var(--border-dark);border:none;padding:0;cursor:pointer;transition:background var(--transition),transform var(--transition);flex-shrink:0}.slideshow__dot:hover{background:var(--bark);transform:scale(1.3)}.slideshow__dot.is-active{background:var(--moss);transform:scale(1.25)}.slideshow__progress{flex:1;height:2px;background:var(--border);border-radius:1px;overflow:hidden}.slideshow__progress-fill{height:100%;background:var(--moss);border-radius:1px;transition:width .2s ease}.slideshow__hint{font-family:var(--font-mono);font-size:10px;color:var(--text-light);white-space:nowrap;flex-shrink:0}@media (max-width: 639px){.slideshow__hint{display:none}.slideshow__arrow{opacity:1}.slideshow__stage .slideshow__meta{opacity:0}.slideshow__stage.meta-open .slideshow__meta{opacity:1}}.gallery-empty{text-align:center;padding:60px 24px;color:var(--text-light);border:1px solid var(--border);border-radius:var(--radius);background:var(--paper-dark)}.gallery-empty p{font-family:var(--font-display);font-style:italic;font-size:1.1rem;margin-bottom:12px;color:var(--text-mid)}.gallery-empty small{font-family:var(--font-mono);font-size:11px;color:var(--text-light);line-height:1.7}.project-list{display:flex;flex-direction:column;gap:56px}.project-section{display:flex;flex-direction:column;gap:0}.project-header{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border)}.project-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.3rem,2.5vw,1.8rem);color:var(--bark-deep);margin-bottom:8px;line-height:1.2}.project-description{font-family:var(--font-body);font-size:14px;color:var(--text-mid);line-height:1.65;max-width:600px;margin:0}
