.gallery-jump-nav{display:flex;gap:0;margin-top:32px;border-top:1px solid #dbe2d7;flex-wrap:wrap;width:max-content;max-width:100%}
.gallery-jump-nav a{display:flex;gap:26px;align-items:center;justify-content:space-between;padding:18px 30px 0 0;margin-right:30px;font-size:16px;font-weight:500;color:#345a44;line-height:1.6}
.gallery-jump-nav a:hover{text-decoration:underline;text-underline-offset:6px}.gallery-nav-count{font:13px Arial,sans-serif;color:#6d806e}
.gallery-section{scroll-margin-top:118px}.gallery-section-heading{margin-bottom:42px}.gallery-section-heading .lead{max-width:460px}
.product-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;align-items:stretch}
.gallery-card{margin:0;min-width:0;background:#fff;border:1px solid #dce3d8;display:flex;flex-direction:column}
.gallery-thumb{position:relative;display:block;width:100%;aspect-ratio:4/3;overflow:hidden;padding:0;background:#edf1e8;border:0}
.gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:filter .25s}
.gallery-thumb.contain img{object-fit:contain;padding:22px;background:#f2f5ed}
.gallery-thumb.detail img{object-fit:cover;will-change:auto}
.gallery-thumb.detail-mesh img{object-position:50% 38%;transform:scale(1.15);transform-origin:50% 45%}
.gallery-thumb.detail-spray img{object-position:50% 0%;transform:scale(1.4);transform-origin:50% 16%}
.gallery-thumb.detail-frame img{object-position:50% 100%;transform:scale(1.6);transform-origin:50% 90%}
.gallery-thumb:hover img{filter:brightness(1.025)}
.gallery-enlarge{position:absolute;right:13px;bottom:13px;display:grid;place-items:center;width:36px;height:36px;background:#fffffff0;color:var(--green);font:22px Arial,sans-serif;box-shadow:0 2px 12px #18372112;pointer-events:none}
.gallery-card-caption{padding:24px;flex:1;border-top:1px solid #e2e7de;min-height:181px}
.gallery-card-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;line-height:1.6;color:#6b7d6c;margin-bottom:13px}
.gallery-card-category{font-weight:500;color:var(--green)}.gallery-card-category.concept{color:#776247}
.gallery-card-caption h3{font-size:20px;line-height:1.5;margin-bottom:10px;letter-spacing:-.03em}
.gallery-card-caption p{font-size:16px;color:var(--muted);line-height:1.8;overflow-wrap:anywhere}
.gallery-page .lightbox-panel,body:has(#structure) .lightbox-panel{display:flex;flex-direction:column;gap:16px;max-height:calc(100svh - 48px)}
.gallery-page .lightbox-panel img,body:has(#structure) .lightbox-panel img{max-height:calc(100svh - 180px);min-height:0;width:auto;object-fit:contain;flex:1 1 auto}
.gallery-lightbox-caption{font-size:15px;line-height:1.7;color:var(--green);text-align:center;padding:0 18px;overflow-wrap:anywhere;flex-shrink:0}
#structure .gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
#structure .gallery button,#structure .gallery button:first-child{aspect-ratio:4/3;grid-column:auto}
#structure .gallery img,#structure .gallery button:first-child img{width:100%;height:100%;object-fit:contain;padding:20px 20px 44px}
@media(max-width:960px){.product-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.gallery-card-caption{min-height:175px}.gallery-section{scroll-margin-top:100px}}
@media(max-width:640px){.gallery-jump-nav{width:100%;gap:0;margin-top:26px}.gallery-jump-nav a{padding:14px 0;margin-right:0;flex:1;font-size:14px;gap:6px;justify-content:flex-start;min-width:0}.gallery-nav-count{font-size:12px}.product-gallery-grid{grid-template-columns:1fr;gap:24px}.gallery-section-heading{margin-bottom:28px}.gallery-card-caption{padding:22px;min-height:0}.gallery-card-caption h3{font-size:21px}.gallery-card-caption p{font-size:16px}.gallery-thumb.contain img{padding:20px}.gallery-card-meta{font-size:14px}.gallery-section{scroll-margin-top:96px}.gallery-enlarge{width:38px;height:38px}.gallery-lightbox-caption{font-size:14px;padding:0 10px}.gallery-page .lightbox-panel,body:has(#structure) .lightbox-panel{padding:30px 12px 20px;gap:12px;max-height:calc(100svh - 30px)}#structure .gallery{grid-template-columns:1fr;gap:24px}#structure .gallery button,#structure .gallery button:first-child{aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){.gallery-thumb img{transition:none}}
