/* Shared bits for the three fictional concept homepages (Still Arc Studio portfolio demos). */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 88px; }
body { margin: 0; overflow-x: hidden; }
img, svg { display: block; max-width: 100%; }
.concept-bar {
  position: relative; z-index: 50;
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px 16px;
  background: #0b0906; color: #e9dcc4; border-bottom: 1px solid rgba(220,196,151,.35);
  font: 500 13px/1.4 "Segoe UI", system-ui, -apple-system, Arial, sans-serif; padding: 9px 16px; text-align: center;
}
.concept-bar strong { color: #f0d9a8; letter-spacing: .08em; text-transform: uppercase; font-size: 12px; }
.concept-bar a { color: #dcc497; }
.concept-bar a:focus-visible { outline: 2px solid #f0e0bd; outline-offset: 2px; }
.demo-link { cursor: default; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }

/* Photo credits (visible attribution; added in consolidation 2026-11-06). Colours inherit from each page's footer. */
.site-foot .photo-credits { margin-top: 22px; padding-top: 18px; border-top: 1px solid currentColor; border-top-color: rgba(128,128,128,.35); font-size: 13px; line-height: 1.55; }
.photo-credits .pc-title { margin: 0 0 6px; letter-spacing: .06em; }
.photo-credits ul { margin: 0 0 8px; padding-left: 1.1em; max-width: 110ch; }
.photo-credits li { margin: 0 0 4px; overflow-wrap: anywhere; }
.photo-credits .pc-note { margin: 0; max-width: 110ch; }
.site-foot .photo-credits a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }

/* Mobile/tablet fix 2026-11-07 (Opus stage, P3-3): taller tap area for the "Back to portfolio" links in the top bar
   and footer, the main routes back to the studio site. Negative margin keeps the bar and footer height unchanged. */
.concept-bar a { display: inline-block; padding: 13px 4px; margin: -13px 0; }
.site-foot .foot-grid a { display: inline-block; padding: 13px 0; margin: -13px 0; }
