/* The workstation's window palette continues behind the page after the opening. */
body[data-opening-preview="computer"] {
  background: linear-gradient(135deg, #c0c4ac, #8a9a89 65%, #657c70) fixed;
  color: #202d27;
}
body[data-opening-preview="computer"] header,
body[data-opening-preview="computer"] .contrast-review-note,
body[data-opening-preview="computer"] .selected-work,
body[data-opening-preview="computer"] .services,
body[data-opening-preview="computer"] footer {
  background: transparent;
  color: #202d27;
  border-color: #536b5b66;
  box-shadow: none;
}
body[data-opening-preview="computer"] header nav a:hover,
body[data-opening-preview="computer"] footer a:hover { color: #314e3b; }
body[data-opening-preview="computer"] header nav a[href*="/arcade"],
body[data-opening-preview="computer"] header .github-link {
  background: #eee9d8;
  border-color: #758674;
  color: #233b2b;
  box-shadow: 3px 3px #556c5b;
}
body[data-opening-preview="computer"] .contrast-review-note { border-bottom: 1px solid #536b5b66; }
body[data-opening-preview="computer"] .selected-work .section-meta,
body[data-opening-preview="computer"] .selected-work .eyebrow,
body[data-opening-preview="computer"] .services .eyebrow { color: #334c3b; }
body[data-opening-preview="computer"] .selected-work .compact-work,
body[data-opening-preview="computer"] .services .service-card {
  background: #f1efe3;
  border: 1px solid #788b78;
  box-shadow: 0 12px 28px #273b2d1c;
}
body[data-opening-preview="computer"] .selected-work .compact-work:first-child,
body[data-opening-preview="computer"] .selected-work .compact-work:nth-child(2) { border-top: 4px solid #647b67; }
body[data-opening-preview="computer"] .selected-work .compact-work h2,
body[data-opening-preview="computer"] .services .services-heading h2,
body[data-opening-preview="computer"] .services .service-card h3 { color: #202d27; }
body[data-opening-preview="computer"] .selected-work .compact-work > p:not(.eyebrow),
body[data-opening-preview="computer"] .services p,
body[data-opening-preview="computer"] .services .service-card li,
body[data-opening-preview="computer"] .services .services-contact p,
body[data-opening-preview="computer"] .services #contact-status { color: #34483b; }
body[data-opening-preview="computer"] .selected-work .compact-preview { border-color: #718273; }
body[data-opening-preview="computer"] .selected-work .preview-toggle,
body[data-opening-preview="computer"] .selected-work .preview-playing .preview-toggle {
  background: #e1e5d7;
  border-color: #849582;
  color: #253b2c;
}
body[data-opening-preview="computer"] .services:before { display: none; }
body[data-opening-preview="computer"] .section .button.lime,
body[data-opening-preview="computer"] .selected-work .button.dark {
  background: #354f3d;
  border: 1px solid #354f3d;
  color: #fffdf3;
  box-shadow: 0 3px 0 #24382b;
}
body[data-opening-preview="computer"] .section .button:hover,
body[data-opening-preview="computer"] .section button:not(:disabled):hover {
  box-shadow: 0 4px 0 #24382b, 0 10px 20px #24382b25;
}
body[data-opening-preview="computer"] .section a:focus-visible,
body[data-opening-preview="computer"] .section button:focus-visible,
body[data-opening-preview="computer"] header a:focus-visible,
body[data-opening-preview="computer"] footer a:focus-visible { outline: 3px solid #243f2d; outline-offset: 5px; box-shadow: none; }
body[data-opening-preview="computer"] .arcade-entrance {
  background: #e6e6d8;
  color: #202d27;
  border: 1px solid #758a75;
  box-shadow: 0 12px 28px #273b2d20;
}
body[data-opening-preview="computer"] .arcade-entrance:before { background: none; }
body[data-opening-preview="computer"] .arcade-entrance .eyebrow { color: #334c3b; }
body[data-opening-preview="computer"] .arcade-entrance p { color: #34483b; }
body[data-opening-preview="computer"] .arcade-entrance .arcade-door {
  background: #344a3a;
  border: 3px solid #6f816e;
  box-shadow: 0 9px 0 #344a3a;
}
body[data-opening-preview="computer"] .arcade-entrance .arcade-door > span {
  background: #344a3a;
  color: #fffdf3;
  border-color: #748575;
}

/* Classic desktop chrome, confined to the page following the computer opening. */
body[data-opening-preview="computer"] header,
body[data-opening-preview="computer"] header *,
body[data-opening-preview="computer"] .contrast-review-note,
body[data-opening-preview="computer"] .contrast-review-note *,
body[data-opening-preview="computer"] .selected-work,
body[data-opening-preview="computer"] .selected-work *,
body[data-opening-preview="computer"] .services,
body[data-opening-preview="computer"] .services *,
body[data-opening-preview="computer"] .arcade-entrance,
body[data-opening-preview="computer"] .arcade-entrance *,
body[data-opening-preview="computer"] footer,
body[data-opening-preview="computer"] footer * { font-family: Tahoma, Arial, sans-serif; letter-spacing: normal; }
body[data-opening-preview="computer"] header nav a { font-size: 13px; }
body[data-opening-preview="computer"] .section-meta,
body[data-opening-preview="computer"] .eyebrow { font-size: 12px; font-weight: 700; letter-spacing: .04em; }
body[data-opening-preview="computer"] .desktop-window {
  padding: 3px;
  border: 1px solid #4b5d50;
  border-radius: 0;
  background: #d9ddd2;
  box-shadow: inset 1px 1px #fff, inset -1px -1px #849187, 0 14px 30px #26392d35;
  transition: transform .2s ease, box-shadow .2s ease;
}
body[data-opening-preview="computer"] .desktop-window:hover {
  transform: translateY(-3px) scale(1.003);
  box-shadow: inset 1px 1px #fff, inset -1px -1px #849187, 0 20px 38px #26392d40;
}
body[data-opening-preview="computer"] .desktop-window[hidden],
body[data-opening-preview="computer"] .window-content[hidden],
body[data-opening-preview="computer"] .window-restore[hidden],
body[data-opening-preview="computer"] .window-restore button[hidden] { display: none; }
body[data-opening-preview="computer"] .window-titlebar {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  min-height: 32px; padding: 3px 4px 3px 9px;
  background: linear-gradient(90deg,#3c5544,#738b76); color: #fffdf4;
}
body[data-opening-preview="computer"] .window-title { font-size: 13px; font-weight: 700; }
body[data-opening-preview="computer"] .window-actions { display: flex; gap: 3px; flex-shrink: 0; }
body[data-opening-preview="computer"] .window-actions button,
body[data-opening-preview="computer"] .window-restore button {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 28px; min-height: 27px; padding: 0 5px;
  background: #e5e7df; color: #263b2e; border: 1px solid;
  border-color: #fff #68786c #68786c #fff; border-radius: 0;
  box-shadow: none; font: 700 17px/1 Tahoma, Arial, sans-serif;
  transform: none;
}
body[data-opening-preview="computer"] .window-actions button:hover,
body[data-opening-preview="computer"] .window-restore button:hover { background: #f7f8f1; box-shadow: none; transform: none; }
body[data-opening-preview="computer"] .window-actions button:active,
body[data-opening-preview="computer"] .window-restore button:active { border-color: #68786c #fff #fff #68786c; }
body[data-opening-preview="computer"] .window-content { padding: 26px; background: #f1efe3; }
body[data-opening-preview="computer"] .compact-work .window-content { display: flex; flex: 1; flex-direction: column; align-items: flex-start; width: 100%; }
body[data-opening-preview="computer"] .compact-work .window-content .card-site-link { margin-top: auto; }
body[data-opening-preview="computer"] .services { display: block; margin-block: 30px; width: min(1300px, 90%); }
body[data-opening-preview="computer"] .services .window-content { padding: clamp(24px, 4vw, 54px); }
body[data-opening-preview="computer"] .arcade-entrance { display: block; }
body[data-opening-preview="computer"] .arcade-entrance .window-content { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 8%; background: #e6e6d8; }
body[data-opening-preview="computer"] .desktop-window.is-expanded {
  position: fixed; inset: 12px; z-index: 100; width: auto; max-width: none; height: auto; max-height: calc(100dvh - 24px);
  margin: 0; overflow: auto; transform: none;
}
body[data-opening-preview="computer"] .window-restore { display: flex; flex-wrap: wrap; gap: 8px; padding: 12px 5%; background: #e5e7df; }
body[data-opening-preview="computer"] .window-restore button { padding: 7px 12px; font-size: 13px; }
@media (max-width: 700px) {
  body[data-opening-preview="computer"] header nav a { font-size: 10px; }
  body[data-opening-preview="computer"] .services { width: calc(100% - 40px); }
  body[data-opening-preview="computer"] .window-content { padding: 20px; }
  body[data-opening-preview="computer"] .arcade-entrance .window-content { grid-template-columns: 1fr; gap: 28px; }
  body[data-opening-preview="computer"] .window-actions button { min-width: 36px; min-height: 36px; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-opening-preview="computer"] .desktop-window { transition: none; }
  body[data-opening-preview="computer"] .desktop-window:hover { transform: none; }
}
body[data-opening-preview="computer"] .desktop-window .window-titlebar { width: 100%; }
body[data-opening-preview="computer"] .desktop-window .window-content[hidden] { display: none; }
body[data-opening-preview="computer"] .services .services-heading h2,
body[data-opening-preview="computer"] .services .services-heading .eyebrow { font-family: Tahoma, Arial, sans-serif; letter-spacing: normal; }
@media (max-width: 500px) {
  body[data-opening-preview="computer"] header { height: auto; min-height: 94px; flex-wrap: wrap; gap: 8px; padding-block: 12px; }
  body[data-opening-preview="computer"] header nav { width: 100%; flex-wrap: wrap; gap: 8px 12px; }
}
@media (max-width: 700px) {
  body[data-opening-preview="computer"] .window-actions button { min-width: 44px; min-height: 44px; }
}
/* Transparent wrappers for post-intro branding. */
body[data-opening-preview="computer"] header .brand-logo,
body[data-opening-preview="computer"] footer .brand-logo {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  mix-blend-mode: normal;
}
body[data-opening-preview="computer"] header .brand-logo img,
body[data-opening-preview="computer"] footer .brand-logo img { filter: none; mix-blend-mode: normal; }
body[data-opening-preview="computer"] footer > span { color: #2e4436; font-size: 11px; }
body[data-opening-preview="computer"] footer > a:not(.brand) { font-size: 12px; }
body[data-opening-preview="computer"] .arcade-entrance { width: min(1300px, 90%); margin: 30px auto 60px; }
/* The transparent asset contains the whole mark; fit it without the old crop. */
body[data-opening-preview="computer"] header .brand-logo,
body[data-opening-preview="computer"] footer .brand-logo { width: 180px; height: 82px; }
body[data-opening-preview="computer"] header .brand-logo img,
body[data-opening-preview="computer"] footer .brand-logo img {
  position: static; inset: auto; width: 100%; height: 100%; max-width: 100%; object-fit: contain;
}
@media (max-width: 700px) {
  body[data-opening-preview="computer"] header .brand-logo,
  body[data-opening-preview="computer"] footer .brand-logo { width: 144px; height: 66px; }
}
/* Explicit replay control, distinct from returning to the website header. */
body[data-opening-preview="computer"] .contrast-review-note a[href$="#story"] {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 10px 18px;
  background: #f1efe3; color: #243b2c; font: 700 14px/1.35 Tahoma, Arial, sans-serif;
  text-decoration: none; white-space: nowrap; border: 2px solid;
  border-color: #fff #596d5c #596d5c #fff; border-radius: 0;
  box-shadow: 2px 3px 0 #405849;
}
body[data-opening-preview="computer"] .contrast-review-note a[href$="#story"]:hover { background: #fffdf3; }
body[data-opening-preview="computer"] .contrast-review-note a[href$="#story"]:active {
  border-color: #596d5c #fff #fff #596d5c; box-shadow: 1px 1px 0 #405849;
}
body[data-opening-preview="computer"] .contrast-review-note a[href$="#story"]:focus-visible { outline: 3px solid #243f2d; outline-offset: 4px; }

/* Classic system palette for the desktop following the office opening. */
body[data-opening-preview="computer"] { background: #bfc3c3; color: #202326; }
body[data-opening-preview="computer"] header,
body[data-opening-preview="computer"] .contrast-review-note,
body[data-opening-preview="computer"] .selected-work,
body[data-opening-preview="computer"] .services,
body[data-opening-preview="computer"] footer { color: #202326; border-color: #858b8d; }
body[data-opening-preview="computer"] header nav a:hover,
body[data-opening-preview="computer"] footer a:hover { color: #164875; }
body[data-opening-preview="computer"] header nav a[href*="/arcade"],
body[data-opening-preview="computer"] header .github-link,
body[data-opening-preview="computer"] .contrast-review-note a[href$="#story"],
body[data-opening-preview="computer"] .section .button.lime,
body[data-opening-preview="computer"] .selected-work .button.dark,
body[data-opening-preview="computer"] .selected-work .preview-toggle,
body[data-opening-preview="computer"] .selected-work .preview-playing .preview-toggle,
body[data-opening-preview="computer"] .window-actions button,
body[data-opening-preview="computer"] .window-restore button {
  background: #d4d4d4; color: #1d252d; border: 2px solid;
  border-color: #fff #666 #666 #fff; border-radius: 0;
  box-shadow: 1px 2px 0 #777;
}
body[data-opening-preview="computer"] .contrast-review-note a[href$="#story"]:hover,
body[data-opening-preview="computer"] .window-actions button:hover,
body[data-opening-preview="computer"] .window-restore button:hover { background: #ebebeb; }
body[data-opening-preview="computer"] .section .button:hover,
body[data-opening-preview="computer"] .section button:not(:disabled):hover { box-shadow: 1px 3px 0 #777, 0 8px 16px #252b3020; }
body[data-opening-preview="computer"] .window-actions button:hover,
body[data-opening-preview="computer"] .window-restore button:hover { box-shadow: 1px 2px 0 #777; }
body[data-opening-preview="computer"] .window-actions button:active,
body[data-opening-preview="computer"] .window-restore button:active,
body[data-opening-preview="computer"] .contrast-review-note a[href$="#story"]:active { border-color: #666 #fff #fff #666; box-shadow: none; }
body[data-opening-preview="computer"] .selected-work .section-meta,
body[data-opening-preview="computer"] .selected-work .eyebrow,
body[data-opening-preview="computer"] .services .eyebrow,
body[data-opening-preview="computer"] .arcade-entrance .eyebrow { color: #31485a; }
body[data-opening-preview="computer"] .selected-work .compact-work h2,
body[data-opening-preview="computer"] .services .services-heading h2,
body[data-opening-preview="computer"] .services .service-card h3 { color: #202326; }
body[data-opening-preview="computer"] .selected-work .compact-work > p:not(.eyebrow),
body[data-opening-preview="computer"] .services p,
body[data-opening-preview="computer"] .services .service-card li,
body[data-opening-preview="computer"] .services .services-contact p,
body[data-opening-preview="computer"] .services #contact-status,
body[data-opening-preview="computer"] .arcade-entrance p { color: #343c42; }
body[data-opening-preview="computer"] .desktop-window {
  background: #d4d4d4; border-color: #60676a;
  box-shadow: inset 1px 1px #fff, inset -1px -1px #85898b, 0 14px 30px #29303935;
}
body[data-opening-preview="computer"] .desktop-window:hover { box-shadow: inset 1px 1px #fff, inset -1px -1px #85898b, 0 20px 38px #29303940; }
body[data-opening-preview="computer"] .window-titlebar { background: linear-gradient(90deg, #173d70, #3975a7); color: #fff; }
body[data-opening-preview="computer"] .window-content,
body[data-opening-preview="computer"] .arcade-entrance .window-content { background: #f0f0ed; }
body[data-opening-preview="computer"] .services .service-card {
  background: #fafaf8; border-color: #a0a4a5; box-shadow: 0 8px 20px #29303915;
}
body[data-opening-preview="computer"] .selected-work .compact-preview { border-color: #8d959a; }
body[data-opening-preview="computer"] .arcade-entrance .arcade-door { background: #424b52; border-color: #899297; box-shadow: 0 9px 0 #41494e; }
body[data-opening-preview="computer"] .arcade-entrance .arcade-door > span { background: #424b52; color: #fff; border-color: #899297; }
body[data-opening-preview="computer"] .window-restore { background: #d4d4d4; }
body[data-opening-preview="computer"] .section a:focus-visible,
body[data-opening-preview="computer"] .section button:focus-visible,
body[data-opening-preview="computer"] header a:focus-visible,
body[data-opening-preview="computer"] footer a:focus-visible,
body[data-opening-preview="computer"] .contrast-review-note a[href$="#story"]:focus-visible { outline-color: #123c68; }
body[data-opening-preview="computer"] .selected-work .compact-work:first-child,
body[data-opening-preview="computer"] .selected-work .compact-work:nth-child(2) { border-top: 1px solid #60676a; }
/* Consistent system buttons across the computer preview's main navigation. */
body[data-opening-preview="computer"] header nav a[href] {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 9px 14px; background: #d4d4d4; color: #1d252d;
  border: 2px solid; border-color: #fff #666 #666 #fff; border-radius: 0;
  box-shadow: 1px 2px 0 #777; font: 700 13px/1.3 Tahoma, Arial, sans-serif;
  text-transform: none; white-space: nowrap;
}
body[data-opening-preview="computer"] header nav a[href]:hover { background: #ebebeb; color: #1d252d; }
body[data-opening-preview="computer"] header nav a[href]:active { border-color: #666 #fff #fff #666; box-shadow: none; }
@media (max-width: 700px) {
  body[data-opening-preview="computer"] header { height: auto; min-height: 94px; flex-wrap: wrap; gap: 8px; padding-block: 12px; }
  body[data-opening-preview="computer"] header nav { width: 100%; flex-wrap: wrap; gap: 8px; }
  body[data-opening-preview="computer"] header nav a[href] { min-height: 44px; padding: 9px 12px; font-size: 12px; }
}
@media (max-width: 460px) {
  body[data-opening-preview="computer"] header nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-opening-preview="computer"] header nav a[href] { width: 100%; min-width: 0; }
}

@media(min-width:1000px){body[data-opening-preview="computer"] .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:701px) and (max-width:999px){body[data-opening-preview="computer"] .service-grid .service-card:last-child{grid-column:1/-1}}
