body.game-project-page { background: var(--paper); color: var(--ink); }
.game-project-page .nav { border-color: var(--line); }
.game-project-page .nav a { color: var(--ink); }
.game-project-page .nav a:hover, .game-project-page .text-link:hover { color: #e88a45; }
.game-project-page .menu-button { color: var(--ink); }
.game-project-page .project-page { padding: 0; }
.restricted-access-panel { display: grid; min-height: min(72vh, 760px); padding: clamp(72px, 11vw, 160px) clamp(30px, 13vw, 180px); place-items: center; }
.restricted-access-card { width: min(100%, 460px); }
.restricted-access-kicker { margin: 0 0 16px; color: #f34c7a; font-size: 12px; font-weight: 700; letter-spacing: .14em; }
.restricted-access-card h1 { margin: 0; font-size: clamp(30px, 4vw, 52px); line-height: 1.08; }
.restricted-access-card > p:not(.restricted-access-kicker) { margin: 16px 0 36px; font-size: clamp(16px, 1.6vw, 20px); line-height: 1.5; }
.restricted-access-form { display: grid; gap: 12px; }
.restricted-access-form label { font-size: 14px; font-weight: 700; }
.restricted-access-form input { width: 100%; box-sizing: border-box; border: 1px solid var(--ink); border-radius: 0; padding: 14px 16px; background: transparent; color: var(--ink); font: inherit; letter-spacing: .2em; }
.restricted-access-form button { justify-self: start; border: 0; border-radius: 0; padding: 14px 22px; background: #f34c7a; color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.restricted-access-form button:hover, .restricted-access-form button:focus-visible { background: #d93b67; }
.restricted-access-error { min-height: 1.5em; margin: 4px 0 0; color: #bd234d; font-size: 14px; }
.game-project-description { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: clamp(42px, 10vw, 160px); align-items: start; min-height: min(50vw, 570px); padding: clamp(72px, 11vw, 160px) clamp(30px, 13vw, 180px); }
.secondary-project-description { border-top: 1px solid var(--line); }
.game-project-title h1 { margin: 0; max-width: 450px; color: #f34c7a; font-size: clamp(16px, 1.8vw, 24px); font-weight: 600; line-height: 1.5; letter-spacing: 0; outline: 0; }
.game-project-title h2 { margin: 0; max-width: 450px; color: #f34c7a; font-size: clamp(16px, 1.8vw, 24px); font-weight: 600; line-height: 1.5; letter-spacing: 0; outline: 0; }
.game-project-title h2:empty::before { content: attr(data-placeholder); color: var(--ink); opacity: .42; }
.game-project-subtitle { min-height: 2.1em; max-width: 450px; margin-top: 16px; color: var(--ink); font-size: clamp(15px, 1.45vw, 19px); font-weight: 500; line-height: 1.55; white-space: pre-wrap; outline: 0; }
.game-project-subtitle:empty::before { content: attr(data-placeholder); color: var(--ink); opacity: .42; }
.game-project-copy { max-width: 580px; font-size: clamp(16px, 1.8vw, 24px); font-weight: 600; line-height: 1.5; outline: 0; }
.game-project-copy:empty::before { content: attr(data-placeholder); color: var(--ink); opacity: .42; }
.game-project-copy a { color: #1e4d89; text-decoration: underline; text-underline-offset: .14em; }
.game-project-copy a:hover { color: #f34c7a; }
.game-project-title h1:focus, .game-project-subtitle:focus, .game-project-copy:focus { box-shadow: inset 0 -1px 0 #f34c7a; }
.game-project-title h2:focus { box-shadow: inset 0 -1px 0 #f34c7a; }
.victoria-media-stack { display: grid; gap: clamp(28px, 5vw, 76px); padding: clamp(20px, 2vw, 40px) 20px clamp(80px, 12vw, 180px); }
.victoria-media-item { width: min(100%, 980px); margin: 0 auto; }
.victoria-media-item img { display: block; width: 100%; height: auto; background: #e8e7e0; }
.victoria-media-item video { display: block; width: 100%; height: auto; background: #e8e7e0; }
.victoria-media-item iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; background: #e8e7e0; }
.drawing-mosaic { display: block; column-count: 3; column-gap: clamp(14px, 2vw, 28px); padding: clamp(20px, 2vw, 40px) clamp(20px, 4vw, 64px) clamp(80px, 12vw, 180px); }
.drawing-mosaic .victoria-media-item { display: inline-block; width: 100%; max-width: none; margin: 0 0 clamp(14px, 2vw, 28px); break-inside: avoid; vertical-align: top; }
.drawing-mosaic .victoria-media-item img { width: 100%; height: auto; }
.game-project-page .footer { border-top: 1px solid var(--line); background: var(--paper); color: var(--ink); }
@media (max-width: 900px) { .drawing-mosaic { column-count: 2; } }
@media (max-width: 760px) { .restricted-access-panel { min-height: 64vh; padding: 72px 20px; }.game-project-description { grid-template-columns: 1fr; gap: 34px; min-height: auto; padding: 72px 20px 62px; }.game-project-copy { font-size: 17px; }.victoria-media-stack { padding: 16px 12px 85px; gap: 36px; }.drawing-mosaic { column-count: 2; column-gap: 12px; padding: 16px 12px 85px; }.drawing-mosaic .victoria-media-item { margin-bottom: 12px; } }
@media (max-width: 480px) { .drawing-mosaic { column-count: 1; } }
