/* Scoped integration fixes; the main design remains in CrocoBuilder. */
body.fm-games-page { background: #08090c; }
.fm-games-page .fm-wp-nav.pb-nav.is-collapsed .pb-nav__mobile-panel { background: #101114; color: #f4f1e9; }
.fm-games-page .fm-wp-nav .pb-nav__collapse-toggle {
  width: 100%; padding: 12px 16px; text-align: left; font-weight: 700;
  border: 1px solid #494852; background: linear-gradient(#3b3c46,#202127);
}

/* Design sprint: restrained game-studio details, locally hosted typography. */
@font-face {
  font-family: 'FM Barlow'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('fonts/BarlowSemiCondensed-SemiBold.woff2') format('woff2');
}
.fm-games-page .fm-clan h1,
.fm-games-page .fm-clan h2,
.fm-games-page .fm-clan h3 {
  font-family: 'FM Barlow', 'Arial Narrow', Arial, sans-serif;
  font-weight: 600; letter-spacing: -.012em; text-wrap: balance;
}
.fm-games-page .fm-clan h1 { font-size: clamp(36px,4.4vw,54px); line-height: 1.04; margin-bottom: 20px; }
.fm-games-page .fm-clan h2 { font-size: 28px; line-height: 1.15; }
.fm-games-page .fm-clan h3 { font-size: 27px; line-height: 1.2; }
.fm-games-page .fm-intro { max-width: 850px; margin-bottom: 36px; }
.fm-games-page .fm-clan .fm-intro p { max-width: 690px; line-height: 1.75; }
.fm-games-page .fm-eyebrow { color: #cdb6ec; letter-spacing: .16em; }
.fm-games-page .fm-masthead {
  position: relative; isolation: isolate; overflow: hidden; padding-block: 28px;
  background: radial-gradient(ellipse at 14% 45%,#50376566,transparent 52%),
    repeating-linear-gradient(135deg,transparent 0 5px,#ffffff03 5px 6px),
    linear-gradient(110deg,#24222d,#111216 75%);
  box-shadow: inset 0 1px #ffffff0d,inset 0 -1px #ffffff08;
}
.fm-games-page .fm-masthead::before {
  content: ''; position: absolute; inset: 0 0 0 55%; z-index: -1; pointer-events: none;
  background: linear-gradient(#caa7ff08 1px,transparent 1px),linear-gradient(90deg,#caa7ff08 1px,transparent 1px);
  background-size: 28px 28px; mask-image: linear-gradient(90deg,transparent,#000);
}
.fm-games-page .fm-brand { position: relative; }
.fm-games-page .fm-brand::after {
  content: 'Guter Zug.'; position: absolute; left: 0; bottom: -20px;
  color: #d7b7ff; font: 11px/1.4 Consolas,monospace; letter-spacing: .06em;
  opacity: 0; pointer-events: none;
}
.fm-games-page .fm-clan .fm-panel {
  border-color: #47424f; background: linear-gradient(145deg,#202027,#18191e 65%);
  box-shadow: inset 0 1px #ffffff08,0 3px 0 #07080b,0 10px 24px #0000001a;
}
.fm-games-page .fm-clan .fm-bar {
  background: linear-gradient(#3d3b47,#2b2a34 48%,#25242d 49%,#22212a);
  box-shadow: inset 0 1px #ffffff20,inset 0 -1px #ffffff08;
  color: #d0cbd9;
}
.fm-games-page .fm-symbol { color: #ddc9ff; border-color: #67517b; box-shadow: inset 0 1px #a480c04d,inset 0 -2px #0c0b11; }
.fm-games-page .fm-clan .fm-action {
  background: linear-gradient(#8645d6,#7130c0 48%,#6829b6 49%,#6225ae);
  border-color: #a675dc; border-radius: 2px;
  box-shadow: inset 0 1px #d3adff80,inset 0 -2px #3a145e,0 2px 0 #08090b;
}
.fm-games-page .fm-clan .fm-action:focus-visible { outline: 3px solid #e4cfff; outline-offset: 4px; }
.fm-games-page .fm-clan .fm-action:active { transform: translateY(1px); box-shadow: inset 0 1px 4px #270d49,0 1px 0 #08090b; }
.fm-games-page .fm-wp-nav .pb-nav__link { border-top-color: #66616f; border-radius: 1px; }
.fm-games-page .fm-wp-nav .pb-nav__link.is-current { box-shadow: inset 0 2px #c8a0ff,inset 0 -2px #451b79; }
.fm-games-page .fm-clan .fm-devlog {
  margin: 19px 0 15px; padding: 0; list-style: none; border-top: 1px solid #ffffff10;
}
.fm-games-page .fm-clan .fm-devlog-row {
  display: flex; gap: 14px; align-items: baseline; padding: 9px 0;
  border-bottom: 1px solid #ffffff0c; color: #c6c1ce; font-size: 13px; line-height: 1.5;
}
.fm-games-page .fm-devlog-index { color: #b994df; font: 11px/1.5 Consolas,monospace; flex: 0 0 22px; }
.fm-games-page .fm-footer { padding: 20px 28px; }

@keyframes fm-header-arrive { from { opacity: .65; transform: translateY(3px); } to { opacity: 1; transform: none; } }
@keyframes fm-controller-signal { 50% { color: #ffffff; filter: drop-shadow(0 0 3px #cda2ff); } }
@keyframes fm-block-seat { from { transform: translate(2px,-2px); } to { transform: none; } }
@keyframes fm-book-check { from { opacity: .4; transform: translateY(1px); } to { opacity: 1; transform: none; } }
@media(min-width:768px) and (prefers-reduced-motion:no-preference) {
  .fm-games-page .fm-brand { animation: fm-header-arrive 400ms ease-out both; }
}
@media(min-width:768px) and (hover:hover) and (pointer:fine) {
  .fm-games-page .fm-action,
  .fm-games-page .fm-action svg,
  .fm-games-page .fm-textlink svg,
  .fm-games-page .fm-paths > .fm-panel,
  .fm-games-page .fm-wp-nav .pb-nav__link,
  .fm-games-page .fm-brand::after,
  .fm-games-page .fm-logo { transition: transform 180ms ease-out,box-shadow 180ms ease-out,border-color 180ms ease-out,filter 220ms ease-out,opacity 180ms ease-out; }
  .fm-games-page .fm-clan .fm-action:hover,
  .fm-games-page .fm-clan .fm-action:focus-visible { border-color: #dbc1ff; box-shadow: inset 0 1px #ead9ffb3,inset 0 -2px #421965,0 3px 14px #9e58ef26; }
  .fm-games-page .fm-action:is(:hover,:focus-visible) svg,
  .fm-games-page .fm-textlink:is(:hover,:focus-visible) svg { transform: translateX(3px); }
  .fm-games-page .fm-paths > .fm-panel:is(:hover,:focus-within) { border-color: #8e70ac; }
  .fm-games-page .fm-wp-nav .pb-nav__link:hover { border-color: #aa87cf; }
  .fm-games-page .fm-brand:is(:hover,:focus-visible)::after { opacity: 1; }
  .fm-games-page .fm-brand:is(:hover,:focus-visible) .fm-logo { filter: invert(1) drop-shadow(0 0 7px #ae76ee80); }
  .fm-games-page .fm-paths > :nth-child(1):is(:hover,:focus-within) .fm-symbol svg { animation: fm-controller-signal 240ms ease-out 1; }
  .fm-games-page .fm-paths > :nth-child(2):is(:hover,:focus-within) .fm-symbol svg rect { animation: fm-block-seat 220ms ease-out 1; }
  .fm-games-page .fm-paths > :nth-child(3):is(:hover,:focus-within) .fm-symbol svg path:nth-child(2) { animation: fm-book-check 220ms ease-out 1; }
}
@media(max-width:767px) {
  .fm-games-page .fm-clan h1 { font-size: clamp(32px,8.8vw,38px); line-height: 1.08; margin-bottom: 16px; }
  .fm-games-page .fm-clan h2,.fm-games-page .fm-clan .fm-path-body h2 { font-size: 25px; }
  .fm-games-page .fm-clan h3 { font-size: 25px; }
  .fm-games-page .fm-masthead { padding: 18px 16px; }
  .fm-games-page .fm-masthead::before { display: none; }
  .fm-games-page .fm-intro { margin-bottom: 28px; }
  .fm-games-page .fm-paths { gap: 16px; }
  .fm-games-page .fm-clan .fm-panel { box-shadow: inset 0 1px #ffffff08; }
  .fm-games-page .fm-clan .fm-bar { padding-block: 8px; min-height: 35px; }
  .fm-games-page .fm-brand::after { display: none; }
  .fm-games-page .fm-footer { padding: 18px 16px; }
  .fm-games-page .fm-clan .fm-action:active { transform: none; }
}
@media(prefers-reduced-motion:reduce) {
  .fm-games-page .fm-clan *, .fm-games-page .fm-clan *::before, .fm-games-page .fm-clan *::after {
    animation: none !important; transition: none !important; scroll-behavior: auto !important;
  }
  .fm-games-page .fm-clan .fm-action svg,.fm-games-page .fm-clan .fm-textlink svg,
  .fm-games-page .fm-clan .fm-action:active { transform: none; }
}
.fm-games-page .fm-wp-nav button:focus-visible { outline: 3px solid #caa7ff; outline-offset: -4px; }
@media(max-width:767px) {
  .fm-games-page .fm-wp-nav .pb-nav__mobile-panel { padding: 64px 16px 24px; transition: none; }
  .fm-games-page .fm-wp-nav.pb-nav.is-collapsed .pb-nav__mobile-close { top: 8px; right: 16px; width: 48px; height: 48px; font-size: 28px; background:#292a32; color:#f4f1e9; border:1px solid #67626e; }
  .fm-games-page .fm-wp-nav .pb-nav__list { gap: 8px; }
  .fm-games-page .fm-wp-nav .pb-nav__item { flex: 0 0 auto; }
  .admin-bar.fm-games-page .fm-wp-nav .pb-nav__mobile-panel { top: 46px; height: calc(100dvh - 46px); }
}
