.gallery { display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;gap:0; }
.gallery-page { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px 13px;flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;align-content:start; }
.gallery-pager,.talk-pager { display:flex;align-items:center;justify-content:center;gap:18px;margin-top:24px; }
.gallery-pager button,.talk-pager button { width:44px;height:44px;border:1px solid #bbd0b1;border-radius:50%;background:#f7faf5;color:#284e39;font-size:21px;flex:none; }
.gallery-pager button:disabled,.talk-pager button:disabled { opacity:.35;cursor:default; }
.gallery-pager span,.talk-pager span { font-size:11px;color:#536c4d;text-align:center;min-width:85px; }
.talk-pager { display:none; }
.mobile-navigation { display:none; }
@media(max-width:1100px) { .gallery-page { grid-template-columns:repeat(5,minmax(0,1fr)); } }
@media(max-width:760px) {
  .mobile-navigation { display:block;position:static;border:0;padding:0;margin:0;flex:none; }
  .mobile-navigation>summary { min-height:44px;width:44px;display:grid;place-items:center;padding:0;border:1px solid #d2dfc8;border-radius:50%;font-size:18px;color:#28513d;list-style:none; }
  .mobile-navigation>summary:after,.mobile-navigation>summary::-webkit-details-marker { display:none; }
  .mobile-nav-links { position:absolute;top:calc(100% + 8px);right:10px;left:10px;width:auto;padding:10px;background:#f7faf5;border:1px solid #ccddbf;border-radius:18px;box-shadow:0 16px 40px #173f3220;z-index:30; }
  .mobile-nav-links a { display:flex;align-items:center;min-height:44px;font-size:13px;padding:9px 15px;color:#28513d;border-radius:10px; }
  .mobile-nav-links a:focus-visible { outline-offset:-2px; }
  .gallery-page { grid-template-columns:repeat(3,minmax(0,1fr));gap:19px 8px; }
  .talk-grid { display:flex;gap:15px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;max-width:none; }
  .talk-card { flex:0 0 88%;scroll-snap-align:start;scroll-snap-stop:always; }
  .talk-cover { height:auto;aspect-ratio:9/12; }
  .talk-cover img { object-fit:contain; }
  .talk-pager { display:flex; }
}
