/* JPP collection links: visible and semantic separation of both languages. */
.category-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;border:0}
.category-directory .category-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;min-width:0;padding:24px 20px;border:1px solid var(--line);border-radius:4px;background:var(--white);text-decoration:none}
.category-link .division-copy{display:flex;flex-direction:column;gap:9px;min-width:0}
.category-link .division-mn{display:block;font-size:16px;line-height:1.5;font-weight:500;color:var(--ink)}
.category-link .division-en{display:block;font-size:12px;line-height:1.6;font-weight:400;letter-spacing:.02em;color:var(--muted)}
.category-link .division-arrow{color:var(--blue);font-size:20px;align-self:start}
.category-directory .category-link:hover{background:var(--soft);border-color:var(--blue)}
.jpp-divisions>a>span,.jpp-divisions>a>strong{display:block;line-height:1.5}
.jpp-divisions>a{gap:9px}.jpp-category-menu section>a{gap:6px}
.catalog-directory .section-head{align-items:flex-end;gap:32px;margin-bottom:34px}.catalog-directory .section-head>p{line-height:1.8}
/* Exact reviewed standalone icon strips, including later and >240px source images. */
button.product-feature-media{padding:0;border:0;background:transparent;color:inherit;cursor:zoom-in;text-align:left;line-height:0;border-radius:2px}
.product-story-images button.product-feature-media--icons{width:max-content;max-width:none;min-width:0;flex:none}
.product-story-images button.product-feature-media--icons img{display:block;height:45px;min-height:45px;max-height:45px;width:auto;max-width:none;object-fit:contain;margin:0}
.product-story-copy--translated p:first-of-type{font-size:17px;line-height:1.85;letter-spacing:normal}
.product-story-copy--translated{max-width:880px}
.product-story-copy--translated p{word-break:normal;overflow-wrap:break-word}
#gallery-full{display:block;width:100%;padding:0;border:0;background:white;cursor:zoom-in}
#gallery-full img{display:block;width:100%;object-fit:contain}
.image-preview-trigger{cursor:zoom-in}.image-preview-trigger:focus-visible,[data-image-preview]:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
/* Social link, matching the footer rather than introducing a new brand color. */
.site-footer .footer-grid a.social-link,.social-link{display:inline-flex;align-items:center;gap:12px;max-width:100%;min-height:44px;padding:9px 0;font-size:13px;line-height:1.5;white-space:normal}
.social-mark{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border:1px solid currentColor;border-radius:50%;font:bold 19px Arial,sans-serif}
.contact-methods .contact-social{padding-bottom:22px}.contact-methods .contact-social>.social-link{padding:8px 0;border:0;font-size:16px}.contact-methods .contact-social .social-mark{font-size:19px;letter-spacing:0}
/* Preview is a modal image view, not a downloadable image URL. */
.media-viewer{width:calc(100vw - 40px);max-width:1320px;height:min(92dvh,1100px);max-height:92dvh;padding:0;border:1px solid var(--line);border-radius:8px;background:var(--paper,var(--white));overflow:hidden;color:var(--ink)}
.media-viewer[open]{display:flex;flex-direction:column}.media-viewer::backdrop{background:rgba(10,25,29,.82)}
.media-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:var(--white);border-bottom:1px solid var(--line);flex-shrink:0}
.media-viewer-head h2{font-size:17px;line-height:1.5;letter-spacing:0}.media-viewer-actions{display:flex;gap:10px;flex-shrink:0}
.media-viewer-actions button{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink);font:inherit;font-size:13px;cursor:pointer}
.media-viewer-actions button:hover{border-color:var(--blue)}
.media-viewer-stage{flex:1;min-height:0;min-width:0;overflow:auto;padding:22px;display:flex;align-items:center;justify-content:center;background:#f3f4f1}
.media-viewer-stage img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;flex-shrink:0;margin:auto}
.media-viewer-stage.is-zoomed{display:block}.media-viewer-stage.is-zoomed img{max-width:none;max-height:none;margin:0 auto}
.media-viewer-caption{font-size:12px;line-height:1.6;max-height:80px;overflow:auto;padding:12px 20px;flex-shrink:0;background:white;margin:0}
@media(max-width:1050px){.category-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.category-directory .category-link{padding:22px}}
@media(max-width:760px){.catalog-directory .section-head{display:block}.catalog-directory .section-head>p{margin-top:22px}.category-link .division-mn{font-size:15px}.category-directory .category-link{padding:18px 16px;gap:12px}.category-link .division-en{font-size:12px}.product-story-copy--translated p:first-of-type{font-size:15px}.media-viewer{width:calc(100vw - 20px);height:92dvh}.media-viewer-head{align-items:flex-start;flex-direction:column;padding:12px}.media-viewer-head h2{font-size:15px}.media-viewer-actions{width:100%;justify-content:space-between}.media-viewer-stage{padding:12px}.media-viewer-caption{padding:10px 12px}}
@media(max-width:460px){.category-directory{grid-template-columns:1fr}.category-link .division-copy{gap:7px}}
@media print{.media-viewer,.social-link{display:none!important}}
