.workshop-gallery{max-width:1480px;color:var(--ink);margin:0 auto;padding:12px 0 40px}.workshop-gallery-hero{border-bottom:1px solid var(--line-strong);margin-bottom:32px;padding:clamp(20px,4vw,54px) 0 clamp(30px,4vw,52px)}.workshop-gallery-back{color:var(--ink-3);align-items:center;gap:6px;padding:8px 0;font-size:13px;transition:color .18s;display:inline-flex}.workshop-gallery-back:hover{color:var(--accent-ink)}.workshop-gallery-heading{justify-content:space-between;align-items:end;gap:24px;margin-top:28px;display:flex}.workshop-gallery-heading h1{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:clamp(42px,6vw,76px);font-weight:400;line-height:1.12}.workshop-gallery-heading p{max-width:630px;color:var(--ink-3);margin:20px 0 0;font-size:clamp(15px,1.6vw,18px);line-height:1.8}.workshop-gallery-heading .workshop-gallery-progress{font:13px var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--accent-ink);margin:14px 0 0}.workshop-gallery-count{color:var(--accent-ink);font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.06em;align-items:center;gap:16px;padding-bottom:5px;font-size:23px;display:flex}.workshop-gallery-count span{color:var(--line-strong)}.workshop-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px;margin:0;padding:0;list-style:none;display:grid}.workshop-gallery-grid>li{min-width:0;display:flex}.workshop-gallery-card{border:1px solid var(--line-strong);border-radius:var(--radius-tile);background:var(--surface);width:100%;min-width:0;box-shadow:0 5px 18px color-mix(in srgb, var(--ink) 3%, transparent);flex-direction:column;transition:border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.workshop-gallery-card:hover,.workshop-gallery-card:focus-within{border-color:var(--accent);box-shadow:0 8px 28px color-mix(in srgb, var(--accent) 10%, transparent)}.workshop-gallery-image{aspect-ratio:3/2;border-bottom:1px solid var(--line);background:var(--bg-muted);position:relative;overflow:hidden}.workshop-gallery-image img{object-fit:cover;width:100%;height:100%;transition:transform .45s;display:block}.workshop-gallery-card:hover .workshop-gallery-image img{transform:scale(1.025)}.workshop-gallery-index{color:#e7cf9f;width:33px;height:33px;font:11px var(--font-mono);background:#1c1710d9;border:1px solid #eed9ae61;border-radius:9999px;place-items:center;display:grid;position:absolute;top:14px;left:14px}.workshop-gallery-done{background:var(--ok);color:#fff;border-radius:9999px;place-items:center;width:33px;height:33px;font-size:16px;line-height:1;display:grid;position:absolute;top:14px;right:14px}.workshop-gallery-card.is-done{border-color:color-mix(in srgb, var(--ok) 45%, var(--line-strong))}.workshop-gallery-best{font:12px var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ok-ink);margin:10px 0 0}.workshop-gallery-body{flex-direction:column;flex:1;padding:23px 24px 22px;display:flex}.workshop-gallery-date{color:var(--accent-ink);font:12px var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.06em;margin:0 0 10px}.workshop-gallery-body h2{font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:27px;font-weight:400;line-height:1.3}.workshop-gallery-subtitle{color:var(--ink-3);flex:1;margin:14px 0 20px;font-size:14px;line-height:1.85}.workshop-gallery-action{border-top:1px solid var(--line-soft);color:var(--ink-4);margin:0;padding-top:17px;font-size:12px;line-height:1.6}.workshop-gallery-start{color:var(--accent-ink);justify-content:space-between;align-items:center;gap:16px;margin-top:13px;font-size:14px;font-weight:600;line-height:1.5;display:flex}.workshop-gallery-start:after{content:"";position:absolute;inset:0}.workshop-gallery-start:focus-visible{outline:none}.workshop-gallery-card:has(.workshop-gallery-start:focus-visible){outline:2px solid var(--accent);outline-offset:4px}.workshop-gallery-back:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:var(--radius-mark)}@media (width<=960px){.workshop-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.workshop-gallery-body{padding:20px}.workshop-gallery-heading{align-items:start}.workshop-gallery-count{gap:10px;padding-top:9px;font-size:18px}}@media (width<=600px){.workshop-gallery{padding-top:0}.workshop-gallery-grid{grid-template-columns:minmax(0,1fr);gap:24px}.workshop-gallery-hero{margin-bottom:24px}.workshop-gallery-heading{margin-top:22px}.workshop-gallery-heading p{margin-top:16px}.workshop-gallery-count{display:none}.workshop-gallery-body{padding:23px}}@media (prefers-reduced-motion:reduce){.workshop-gallery *,.workshop-gallery :after{transition:none}.workshop-gallery-card:hover .workshop-gallery-image img{transform:none}}
