.inner-masthead { background: var(--footer); color: var(--ivory); border-radius: 3px 3px 0 0; }
.inner-page .main-nav [aria-current='page']::after { transform: scaleX(1); }
.inner-page .header-contact { padding-left: 24px; }
.inner-page .header-book { text-decoration: none; }
.inner-page .site-footer { margin-top: 0; }
.inner-page .breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; font-size: 12px; line-height: 1.5; }
.inner-page .breadcrumb a { transition: opacity .2s; }
.inner-page .breadcrumb a:hover { opacity: .65; }
.inner-page .breadcrumb span[aria-hidden] { opacity: .45; }
.inner-page .template-text-link { display: inline-flex; gap: 18px; align-items: center; font-size: 14px; font-weight: 700; padding-block: 10px; }
.template-text-link .icon { width: 32px; transition: transform .25s var(--ease); }
.template-text-link:hover .icon { transform: translateX(5px); }
.inner-page [data-lightbox] { display: block; position: relative; padding: 0; background: none; overflow: hidden; border-radius: 4px; cursor: zoom-in; }
.inner-page [data-lightbox][hidden] { display: none; }
.inner-page [data-lightbox] img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s var(--ease); }
.inner-page [data-lightbox]:hover img { transform: scale(1.035); }
.template-lightbox[open] { display: flex; flex-direction: column; justify-content: center; gap: 18px; padding: 68px 24px 22px; background: rgb(0 0 0 / 86%); }
.template-lightbox > figure { width: min(1500px, 94vw); max-width: none; margin: 0; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.viewer-stage { width: 100%; height: calc(100svh - 215px); overflow: hidden; cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; }
.viewer-stage.is-dragging { cursor: grabbing; }
.viewer-track { display: flex; width: 100%; height: 100%; transform: translateX(-100%); will-change: transform; }
.viewer-slide { display: flex; align-items: center; justify-content: center; flex: 0 0 100%; min-width: 0; height: 100%; padding-inline: 10px; }
.template-lightbox .viewer-slide img { width: auto; max-width: 100%; height: auto; max-height: 100%; object-fit: contain; border-radius: 3px; pointer-events: none; -webkit-user-drag: none; }
.template-lightbox figcaption { color: var(--ivory); font-size: 13px; text-align: center; margin-top: 0; }
.viewer-thumbnails { display: flex; justify-content: flex-start; align-items: center; gap: 9px; max-width: min(90vw, 900px); overflow-x: auto; scrollbar-width: thin; padding: 5px; }
.viewer-thumbnails button { background: none; flex: 0 0 62px; height: 48px; padding: 0; border-radius: 2px; overflow: hidden; opacity: .45; transition: opacity .2s; }
.viewer-thumbnails img { width: 100%; height: 100%; object-fit: cover; }
.viewer-thumbnails button[aria-pressed='true'] { opacity: 1; outline: 2px solid var(--button-gold); outline-offset: 3px; }
.viewer-thumbnails button:hover { opacity: 1; }
.inner-page .field-hint { font-size: 12px; }
.inner-page .form-status { padding: 16px 20px; background: var(--paper); color: var(--ink); border-radius: 3px; }
.inner-page .form-status[hidden] { display: none; }
.inner-page .template-reveal { will-change: auto; }
@media(max-width:1000px) { .inner-page .header-contact { padding-left: 12px; } }
@media(max-width:600px) {
  .inner-page .breadcrumb { font-size: 11px; gap: 8px; }
  .template-lightbox[open] { padding: 64px 14px 20px; gap: 16px; }
  .viewer-stage { height: calc(100svh - 210px); }
  .viewer-slide { padding-inline: 3px; }
  .template-lightbox > figure { max-width: 100%; }
  .viewer-thumbnails button { flex-basis: 52px; height: 42px; }
}
