:root{--color-bg:#efebe4;--color-ink:#38322c;--color-text:#6f665d;--color-muted:#8a8078;--color-label:#9a8f84;--color-accent:#a8756a;--color-accent-dark:#6e4c44;--color-border:#e1d9cd;--color-border-light:#eae3d8;--color-panel:#faf7f1;--color-image-bg:#f1e7e4;--color-paper:#fdfbf7;--color-divider:#e2d3ce;--font-serif:"Newsreader", serif;--font-sans:"Karla", system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--color-bg);margin:0;padding:0}body{font-family:var(--font-sans);color:var(--color-text);-webkit-font-smoothing:antialiased}#root{min-height:100vh}@media (width>=901px){html,body,#root{height:100%;overflow:hidden}}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-dark)}p{text-wrap:pretty}img{max-width:100%}button{cursor:pointer;color:inherit;background:0 0;border:none;padding:0;font-family:inherit}.app-shell{--mobile-header-height:64px;grid-template-columns:320px minmax(0,1fr);min-height:100vh;display:grid}@media (width>=901px){.app-shell{height:100dvh;overflow:hidden}.sidebar,.main-content{height:100%;overflow-y:auto}}.mobile-header{display:none}.sidebar{border-right:1px solid var(--color-border-light);background:var(--color-bg);flex-direction:column;justify-content:space-between;gap:44px;padding:40px 36px;display:flex}.sidebar-top{flex-direction:column;gap:44px;display:flex}.sidebar-logo{font-family:var(--font-serif);letter-spacing:.14em;color:var(--color-ink);font-size:21px;line-height:1.4}.sidebar-logo:hover{color:var(--color-ink)}.sidebar-logo--mobile{font-size:17px;line-height:1}.sidebar-nav{letter-spacing:.14em;text-transform:uppercase;flex-direction:column;gap:16px;font-size:13px;display:flex}.sidebar-nav a{color:var(--color-text)}.sidebar-nav a.is-active{color:var(--color-ink)}.sidebar-panel{flex-direction:column;gap:18px;display:flex}.sidebar-panel-label{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);font-size:12px}.sidebar-panel-title{font-family:var(--font-serif);color:var(--color-ink);font-size:34px;font-weight:300;line-height:1.15}.sidebar-panel-meta{color:var(--color-muted);font-size:14px;line-height:1.8}.sidebar-panel-meta-text{color:var(--color-text);margin:0;font-size:15px;line-height:1.7}.sidebar-panel-story{font-family:var(--font-serif);color:#58504a;margin:0;font-size:17px;font-style:italic;line-height:1.65}.sidebar-panel-link{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--color-divider);color:var(--color-accent);align-self:flex-start;padding-bottom:6px;font-size:13px}.main-content{min-width:0}@media (width<=900px){.app-shell{grid-template-columns:1fr}.mobile-header{height:var(--mobile-header-height);border-bottom:1px solid var(--color-border-light);background:var(--color-bg);z-index:20;justify-content:space-between;align-items:center;padding:0 24px;display:flex;position:sticky;top:0}.mobile-menu-toggle{flex-direction:column;justify-content:center;align-items:flex-end;gap:5px;width:44px;height:44px;margin-right:-10px;display:flex}.mobile-menu-toggle span{background:var(--color-ink);width:22px;height:1px;transition:transform .18s}.mobile-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px)rotate(45deg)}.mobile-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px)rotate(-45deg)}.sidebar{inset:var(--mobile-header-height) 0 0;z-index:10;opacity:0;pointer-events:none;overscroll-behavior:contain;border-right:none;justify-content:flex-start;gap:32px;padding:32px 24px 40px;transition:opacity .18s,transform .18s;position:fixed;overflow-y:auto;transform:translateY(-8px)}.sidebar--open{opacity:1;pointer-events:auto;transform:translateY(0)}.sidebar-top{gap:0}.sidebar-top .sidebar-logo{display:none}.sidebar-nav{gap:4px;font-size:15px}.sidebar-nav a{padding:10px 0}.sidebar-panel{border-top:1px solid var(--color-border-light);padding-top:24px}html.has-menu-open,html.has-menu-open body{overflow:hidden}}.data-state{text-align:center;min-height:40vh;color:var(--color-muted,#777);letter-spacing:.02em;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2rem;font-size:.95rem;display:flex}.data-state--error{color:var(--color-accent-dark,#a33)}.data-state-detail{opacity:.7;word-break:break-word;max-width:40ch;font-size:.8rem}.home{background:var(--color-image-bg);flex-direction:column;min-height:100vh;display:flex}.home-stage{flex:1;place-items:center;min-width:0;min-height:420px;padding:64px 72px 40px;display:grid}.home-frame{box-sizing:border-box;background:var(--color-paper);width:100%;max-width:840px;padding:40px;box-shadow:0 24px 48px -24px #38322c59}.home-frame img{object-fit:contain;width:100%;height:auto;max-height:min(500px,50vh);display:block}.home-strip{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding:0 72px 48px;display:flex}.home-thumbs{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.home-thumb{opacity:.6;outline-offset:4px;background:0 0;border:none;outline:none;padding:0}.home-thumb img{object-fit:cover;cursor:pointer;width:96px;height:72px;display:block}.home-thumb.is-active{opacity:1;outline:1px solid var(--color-ink)}.home-all-link{letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-left:8px;font-size:13px}.home-counter{font-family:var(--font-serif);color:#7a6a64;font-size:16px;font-style:italic}@media (width<=900px){.home{min-height:0}.home-stage{min-height:unset;flex:none;padding:28px 24px 16px}.home-frame{padding:18px}.home-frame img{width:100%;height:230px;max-height:none}.home-strip{padding:4px 24px 32px}.home-thumb img{width:78px;height:60px}}.gallery{padding:56px 72px 72px}.gallery-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:32px;display:flex}.gallery-header h1{font-family:var(--font-serif);color:var(--color-ink);margin:0;font-size:34px;font-weight:300}.gallery-years{color:#7a6a64;font-size:14px}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:40px 32px;display:grid}.gallery-card{cursor:pointer;color:inherit;flex-direction:column;gap:12px;display:flex}.gallery-card-image{background:var(--color-paper);padding:14px}.gallery-card-image img{object-fit:cover;object-position:top;width:100%;height:240px;display:block}.gallery-card-info{flex-direction:column;gap:3px;display:flex}.gallery-card-title{font-family:var(--font-serif);color:var(--color-ink);font-size:21px}.gallery-card-meta{color:var(--color-muted);font-size:13px}@media (width<=900px){.gallery{padding:8px 24px 32px}.gallery-header h1{margin:8px 0 4px;font-size:26px}.gallery-grid{grid-template-columns:1fr 1fr;gap:20px 16px}.gallery-card-image{padding:8px}.gallery-card-image img{height:104px}.gallery-card-title{font-size:16px}.gallery-card-meta{display:none}}:root{--swiper-theme-color:#007aff}:host{z-index:1;margin-left:auto;margin-right:auto;display:block;position:relative}.swiper{z-index:1;margin-left:auto;margin-right:auto;padding:0;list-style:none;display:block;position:relative;overflow:hidden}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{z-index:1;width:100%;height:100%;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box;display:flex;position:relative}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate(0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;transition-property:transform;display:block;position:relative}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{scrollbar-width:none;-ms-overflow-style:none;overflow:auto}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(#0000,#00000080)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(#00000080,#0000)}.swiper-lazy-preloader{z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-top-color:#0000;border-radius:50%;width:42px;height:42px;margin-top:-21px;margin-left:-21px;position:absolute;top:50%;left:50%}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:1s linear infinite swiper-preloader-spin}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active{pointer-events:auto}.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.detail{flex-direction:column;gap:32px;min-height:100vh;padding:48px 72px 40px;display:flex}.detail-main{flex:1;grid-template-columns:minmax(0,1fr) 380px;align-items:center;gap:56px;display:grid}.detail-stage{place-items:center;min-width:0;display:grid}.detail-swiper{width:100%;max-width:680px}.detail-slide{box-sizing:border-box;place-items:center;padding:0 24px;display:grid}.detail-frame{box-sizing:border-box;background:var(--color-paper);max-width:min(632px,100%);padding:36px}.detail-frame img{width:auto;max-width:100%;height:auto;max-height:min(520px,50vh);display:block}.detail-info{flex-direction:column;gap:22px;animation:.52s detail-info-in;display:flex}@keyframes detail-info-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.detail-year{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);font-size:12px}.detail-title{font-family:var(--font-serif);color:var(--color-ink);margin:0;font-size:46px;font-weight:300;line-height:1.12}.detail-story{font-family:var(--font-serif);color:#58504a;margin:0;font-size:20px;font-style:italic;line-height:1.7}.detail-facts{color:var(--color-text);border-top:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);flex-direction:column;gap:8px;padding:18px 0;font-size:15px;line-height:1.7;display:flex}.detail-facts div{justify-content:space-between;gap:16px;display:flex}.detail-facts span:first-child{color:var(--color-label)}.detail-nav{border-top:1px solid var(--color-divider);justify-content:space-between;align-items:center;padding-top:24px;display:flex}.detail-nav-link{letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);font-size:13px}.detail-counter{font-family:var(--font-serif);color:#7a6a64;font-size:16px;font-style:italic}@media (prefers-reduced-motion:reduce){.detail-info{animation:none}}@media (width<=900px){.detail{gap:20px;min-height:0;padding:4px 24px 28px}.detail-main{grid-template-columns:1fr;gap:20px}.detail-frame{padding:16px}.detail-frame img{max-height:250px}.detail-title{font-size:30px}.detail-story{font-size:17px}}.simple-page{flex-direction:column;gap:22px;max-width:680px;padding:72px 72px 96px;display:flex}.simple-page .simple-label{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);font-size:12px}.simple-page h1{font-family:var(--font-serif);color:var(--color-ink);margin:0;font-size:40px;font-weight:300;line-height:1.15}.simple-page p{color:var(--color-text);margin:0;font-size:16px;line-height:1.75}.simple-page p.lead{font-family:var(--font-serif);color:#58504a;font-size:20px;font-style:italic;line-height:1.7}.simple-page a.contact-link{color:var(--color-accent);font-size:15px}@media (width<=900px){.simple-page{padding:32px 24px 48px}.simple-page h1{font-size:30px}}
