/* Product catalogue: scoped to the former poster area and its reader. */
.brochure-section { padding-top: 16px; }
.brochure-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 15px; }
.brochure-heading h3 { margin: 0; color: #697585; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; }
.brochure-download { display: inline-flex; align-items: center; justify-content: center; gap: 6px; color: #0959a1; font-size: 11px; font-weight: 700; min-height: 40px; text-decoration: none; white-space: nowrap; }
.brochure-download:hover { text-decoration: underline; }
.brochure-icon { width: 18px; height: 18px; flex-shrink: 0; }
.brochure-preview { display: block; position: relative; width: 100%; padding: 0; border: 1px solid #e2e9f1; border-radius: 18px; overflow: hidden; background: #f4f7fb; cursor: zoom-in; box-shadow: 0 8px 24px #163c6110; }
.brochure-preview img { display: block; width: 100%; height: auto; aspect-ratio: 704 / 1000; object-fit: contain; background: #fff; }
.brochure-enlarge { position: absolute; left: 50%; bottom: 17px; transform: translateX(-50%); display: flex; align-items: center; gap: 7px; padding: 10px 15px; border: 1px solid #ffffffa6; border-radius: 999px; background: #123958ed; color: #fff; font-size: 11px; font-weight: 600; white-space: nowrap; box-shadow: 0 4px 15px #05284b26; }
.brochure-preview:hover .brochure-enlarge { background: #0959a1; }
.brochure-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; }
.brochure-nav { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; flex-shrink: 0; border: 1px solid #dee7f1; border-radius: 12px; background: #f1f6fc; color: #0959a1; cursor: pointer; }
.brochure-nav:hover:not(:disabled) { background: #e3effb; }
.brochure-nav:disabled { opacity: .32; cursor: default; }
.brochure-page-count { color: #26445f; font-size: 12px; font-weight: 700; font-variant-numeric: tabular-nums; }
.brochure-meta { margin: 11px 0 0; color: #7a8796; font-size: 10px; line-height: 1.6; text-align: center; }
.brochure-reader { position: fixed; inset: 0; margin: auto; padding: 0; width: min(960px, calc(100vw - 40px)); height: min(950px, calc(100dvh - 40px)); max-width: none; max-height: none; border: 1px solid #dfe6ed; border-radius: 20px; overflow: hidden; background: #f0f3f7; color: #18354f; box-shadow: 0 24px 90px #001b3c50; }
.brochure-reader[open] { display: flex; flex-direction: column; }
.brochure-reader::backdrop { background: #071d36bb; backdrop-filter: blur(5px); }
.brochure-reader-header { display: flex; align-items: center; gap: 16px; padding: 15px 20px; background: #fff; border-bottom: 1px solid #dfe6ed; flex-shrink: 0; }
.brochure-reader-title { flex: 1; min-width: 0; }
.brochure-reader-title h2 { margin: 0; font-size: 16px; font-weight: 700; line-height: 1.3; }
.brochure-reader-title p { margin: 4px 0 0; color: #738194; font-size: 11px; }
.brochure-close { border: 1px solid #e3e9f0; background: #f5f7fa; border-radius: 12px; width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; color: #344d63; cursor: pointer; flex-shrink: 0; }
.brochure-close:hover { background: #e9eef5; }
.brochure-reader-stage { flex: 1; min-height: 0; overflow: auto; overscroll-behavior: contain; padding: 16px; -webkit-overflow-scrolling: touch; touch-action: pan-x pan-y pinch-zoom; }
.brochure-paper { margin: 0 auto; background: white; box-shadow: 0 3px 18px #233d5c21; }
.brochure-paper img { display: block; width: 100%; max-width: none; height: auto; cursor: zoom-in; }
.brochure-reader-stage[data-zoomed="true"] { touch-action: none; }
.brochure-paper img { user-select: none; -webkit-user-select: none; -webkit-user-drag: none; }
.brochure-paper[data-zoomed="true"] img { cursor: grab; }
.brochure-paper.is-dragging img { cursor: grabbing; }
.brochure-paper img:focus-visible { outline: 3px solid #0959a1; outline-offset: -3px; }
.brochure-reader-message { margin: 40px auto; padding: 20px; max-width: 360px; text-align: center; font-size: 13px; line-height: 1.7; color: #5d7187; }
.brochure-reader-message[hidden], .brochure-paper[hidden] { display: none; }
.brochure-reader-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 20px; background: #fff; border-top: 1px solid #dfe6ed; flex-shrink: 0; }
.brochure-reader-navigation, .brochure-zoom { display: flex; align-items: center; gap: 8px; }
.brochure-page-select { width: 72px; height: 42px; padding: 0 8px; border: 1px solid #e1e8f0; border-radius: 10px; background: white; color: #234968; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
.brochure-fit { min-width: 64px; height: 42px; padding: 0 8px; border: 1px solid #e1e8f0; border-radius: 10px; background: white; color: #234968; font-size: 11px; font-weight: 700; cursor: pointer; }
.brochure-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 600px) {
  .brochure-reader { width: 100%; height: 100dvh; max-height: 100dvh; border: 0; border-radius: 0; }
  .brochure-reader-header { gap: 10px; padding: max(12px, env(safe-area-inset-top)) 12px 12px; }
  .brochure-reader-title h2 { font-size: 14px; }
  .brochure-reader-header .brochure-download { font-size: 10px; gap: 4px; }
  .brochure-reader-stage { padding: 12px; }
  .brochure-reader-footer { padding: 12px 10px max(12px, env(safe-area-inset-bottom)); gap: 8px; }
  .brochure-reader-navigation, .brochure-zoom { gap: 4px; }
  .brochure-reader-footer .brochure-nav { width: 38px; }
  .brochure-page-select { width: 64px; }
  .brochure-fit { min-width: 54px; }
}
@media (prefers-reduced-motion: reduce) { .brochure-reader-stage { scroll-behavior: auto; } }
