.workshop-gallery{min-width:0}
.workshop-gallery-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0}
.workshop-gallery-nav button{width:36px;min-height:40px;flex:none;border:1px solid #dedbd6;border-radius:4px;background:#fff;color:#740707;font-size:27px;cursor:pointer}
.workshop-gallery-nav span{font-size:12px;line-height:1.5;text-align:center;color:#625c57}
.workshop-gallery-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.workshop-gallery-thumbs button{padding:3px;border:2px solid transparent;border-radius:4px;background:#f2f0ed;cursor:pointer;min-width:0;min-height:44px}
.workshop-gallery-thumbs button[aria-pressed="true"]{border-color:#740707;background:#fff}
.workshop-gallery-thumbs img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:1px}
.workshop-gallery button:focus-visible{outline:2px solid #740707;outline-offset:3px}
.workshop-gallery-detail .service-studio-crop img{height:100%;object-fit:contain;transform:none;background:#f5f4f2}
.service-studio-crop{position:relative;display:block;width:100%;padding:0;border:0;background:#f5f4f2;cursor:zoom-in}
.workshop-zoom-hint{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.62);border-radius:50%;background:rgba(248,250,252,.78);box-shadow:0 6px 22px rgba(33,38,44,.17);backdrop-filter:blur(12px);color:#740707;font-size:25px;line-height:1;transition:transform .25s ease,background .25s ease}
.service-studio-crop:hover .workshop-zoom-hint{transform:scale(1.08);background:rgba(255,255,255,.95)}
.workshop-lightbox{box-sizing:border-box;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:clamp(18px,4vw,58px);border:0;background:rgba(232,238,242,.35);overflow:hidden}
.workshop-lightbox::backdrop{background:rgba(22,27,31,.54);backdrop-filter:blur(18px) saturate(115%);animation:workshop-frost-in .32s ease both}
.workshop-lightbox-shell{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;gap:18px;width:min(1180px,100%);height:100%;margin:auto;padding:22px;border:1px solid rgba(255,255,255,.6);border-radius:18px;background:rgba(247,249,250,.72);box-shadow:0 28px 90px rgba(12,19,24,.34);backdrop-filter:blur(22px) saturate(125%)}
.workshop-lightbox figure{min-width:0;margin:0;text-align:center}
.workshop-lightbox figure img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain;border-radius:8px;box-shadow:0 16px 52px rgba(15,20,24,.25)}
.workshop-lightbox-original figure img{aspect-ratio:2.55/1;object-fit:cover;object-position:center 100%}
.workshop-lightbox figcaption{margin-top:14px;color:#302c29;font-size:14px}
.workshop-lightbox-close,.workshop-lightbox-arrow{border:1px solid rgba(66,62,59,.18);background:rgba(255,255,255,.8);color:#740707;box-shadow:0 7px 22px rgba(20,24,28,.1);cursor:pointer;backdrop-filter:blur(12px)}
.workshop-lightbox-close{position:absolute;z-index:2;top:18px;right:18px;width:46px;height:46px;border-radius:50%;font-size:31px;line-height:1}
.workshop-lightbox-arrow{width:52px;height:58px;border-radius:8px;font-size:36px}
.workshop-lightbox button:focus-visible{outline:3px solid #740707;outline-offset:4px}
.lightbox-open{overflow:hidden}
@keyframes workshop-frost-in{from{opacity:0;backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(18px) saturate(115%)}}
@media(max-width:680px){.workshop-lightbox{padding:12px}.workshop-lightbox-shell{grid-template-columns:40px minmax(0,1fr) 40px;gap:6px;padding:12px;border-radius:12px}.workshop-lightbox-arrow{width:40px;height:52px;font-size:30px}.workshop-lightbox-close{top:10px;right:10px;width:42px;height:42px}.workshop-lightbox figure img{max-height:72vh}.workshop-lightbox figcaption{font-size:12px}}
@media(prefers-reduced-motion:reduce){.workshop-zoom-hint{transition:none}.workshop-lightbox::backdrop{animation:none}}
.workshop-lightbox{padding:24px;background:transparent;align-content:center}
.workshop-lightbox::backdrop{background:rgba(39,43,44,.25);backdrop-filter:blur(7px);animation:workshop-soft-frost .42s ease both}
.workshop-lightbox-shell{width:min(850px,100%);height:auto;max-height:88vh;grid-template-columns:36px minmax(0,1fr) 36px;gap:14px;padding:56px 20px 24px;border-radius:14px;background:rgba(248,249,248,.82);box-shadow:0 18px 60px #18212630;backdrop-filter:blur(8px);animation:workshop-shell-in .4s ease both;isolation:isolate}
.workshop-lightbox-shell:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;opacity:.09;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.32' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23888' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.workshop-lightbox figure img{max-height:62vh;box-shadow:0 5px 18px #18212618}.workshop-lightbox-close{top:10px;right:12px;width:36px;height:36px;font-size:26px;box-shadow:none}.workshop-lightbox-arrow{width:36px;height:44px;font-size:28px;box-shadow:none}.workshop-lightbox figcaption{font-size:12px;margin-top:12px}
.workshop-lightbox.is-closing::backdrop{animation:workshop-soft-frost-out .24s ease both}
@keyframes workshop-soft-frost{from{opacity:0}to{opacity:1}}
@keyframes workshop-soft-frost-out{from{opacity:1}to{opacity:0}}
@keyframes workshop-shell-in{from{opacity:0}to{opacity:1}}
@media(max-width:680px){.workshop-lightbox{padding:12px}.workshop-lightbox-shell{padding:52px 10px 18px;gap:6px;grid-template-columns:30px minmax(0,1fr) 30px}.workshop-lightbox-arrow{width:30px}.workshop-lightbox figure img{max-height:60vh}}
@media(prefers-reduced-motion:reduce){.workshop-lightbox-shell,.workshop-lightbox::backdrop,.workshop-lightbox.is-closing::backdrop{animation:none}}
