/* Shared Inkmoss product gallery. Images retain their original aspect ratio. */
[hidden] { display: none !important; }
.feature-showcase { padding: 54px 0; background: #f1f5f3; border-block: 1px solid #c8d1cf; }
.feature-intro { display:flex; justify-content:space-between; align-items:baseline; gap:24px; margin-bottom:24px; }
.feature-intro h2 { margin:0; font-size:clamp(26px,3vw,36px); line-height:1.3; }
.feature-intro p { margin:0; color:#566365; line-height:1.6; }
.research-gallery { color:#17231f; background:#fff; border:1px solid #c8d1cf; }
.gallery-tabs { display:flex; flex-wrap:wrap; gap:4px; padding:10px 14px; border-bottom:1px solid #c8d1cf; }
.gallery-tabs button { font:inherit; font-size:15px; font-weight:650; color:#46584f; border:0; background:transparent; border-radius:5px; min-height:44px; padding:8px 15px; cursor:pointer; }
.gallery-tabs button[aria-selected=true] { background:#315f50; color:#fff; }
.gallery-tabs button:hover { box-shadow:inset 0 0 0 1px #315f50; }
.gallery-copy { display:grid; grid-template-columns:.8fr 1.2fr; gap:30px; align-items:start; padding:24px 28px; }
.gallery-copy h3 { margin:0; font-size:24px; line-height:1.4; }
.gallery-copy p { margin:0; font-size:16px; line-height:1.65; color:#566365; }
.gallery-panel figure { margin:0; }
.gallery-image-link { display:block; background:#e8ede9; padding:18px 20px; }
.gallery-image-link img { display:block; width:100%; height:auto; max-height:none; aspect-ratio:auto; object-fit:contain; border:1px solid #d1d7d1; border-radius:4px; }
.gallery-panel figcaption { display:flex; justify-content:space-between; gap:18px; padding:14px 24px; font-size:14px; line-height:1.5; border-top:1px solid #d6ded7; color:#566365; background:#fff; }
.gallery-panel figcaption a { color:#315f50; text-decoration:underline; text-underline-offset:4px; white-space:nowrap; }
.language-rail { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:20px; border:1px solid #c8d1cf; background:white; }
.language-rail>div { display:grid; gap:7px; align-content:start; padding:20px; border-right:1px solid #c8d1cf; }
.language-rail>div:last-child { border-right:0; }
.language-rail strong { font-size:18px; }
.language-rail code { font-size:13px; font-weight:400; color:#566365; }
.language-rail span { font-size:14px; line-height:1.5; color:#566365; }
.research-gallery :focus-visible { outline:3px solid #1378a7; outline-offset:3px; }
#panel-inkmoss .research-gallery { border-inline:0; }
#panel-inkmoss .language-rail { margin:0; border-inline:0; border-top:0; }
@media(max-width:760px) {
 .feature-intro { display:block; } .feature-intro p { margin-top:12px; }
 .gallery-copy { grid-template-columns:1fr; gap:10px; padding:20px; }
 .gallery-copy h3 { font-size:22px; }
 .gallery-tabs { padding:8px; } .gallery-tabs button { font-size:14px; padding:8px 11px; }
 .gallery-image-link { padding:6px; }
 .gallery-panel figcaption { flex-wrap:wrap; padding:12px; font-size:13px; }
 .language-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .language-rail>div { padding:16px; } .language-rail>div:nth-child(2) { border-right:0; }
 .language-rail>div:nth-child(n+3) { border-top:1px solid #c8d1cf; }
 .feature-showcase { padding:36px 0; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
