@import url("./doghouse-theme-base.css?v=20261030b");
@import url("./doghouse-theme-components.css?v=20261030b");
@import url("./doghouse-theme-info.css?v=20261030b");
@import url("./doghouse-theme-responsive.css?v=20261030b");
@import url("./doghouse-concept.css?v=20261102a");
@import url("./doghouse-fidelity.css?v=20261102f");
@import url("./doghouse-brand.css?v=20261103d");

/* Keep the visual sequence identical to the document sequence. */
.dog-showcase main > section { order: 0 !important; }

/* Show the original game identities over their artwork. */
.dog-showcase .series-game-art { position: relative; isolation: isolate; }
.dog-showcase .series-game-art::after { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, transparent 10%, #160c2488 100%); pointer-events: none; }
.dog-showcase .series-game-art > img:first-child { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.dog-showcase .series-game-art > .series-game-logo { position: absolute; z-index: 2; left: 50%; bottom: 4%; width: min(74%, 290px); height: 63%; object-fit: contain; transform: translateX(-50%); filter: drop-shadow(0 5px 8px #180c2cc9); transition: transform .3s ease; }
.dog-showcase .series-game-card:hover .series-game-art > .series-game-logo { transform: translateX(-50%) scale(1.06); }
@media (prefers-reduced-motion: reduce) { .dog-showcase .series-game-art > .series-game-logo { transition: none; } }

/* Illustrated release timeline */
.dog-showcase .series-timeline li > .series-timeline-link { display: grid; grid-template-columns: 142px minmax(0,1fr); column-gap: 16px; align-items: center; }
.dog-showcase .series-timeline-thumb { position: relative; isolation: isolate; grid-row: span 2; display: block; overflow: hidden; aspect-ratio: 4/3; border-radius: 8px; background: #361c48; }
.dog-showcase .series-timeline-thumb::after { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, transparent, #170d265c); }
.dog-showcase .series-timeline-thumb img:first-child { display: block; width: 100%; height: 100%; object-fit: cover; }
.dog-showcase .series-timeline-thumb .series-timeline-logo { position: absolute; z-index: 2; left: 12%; top: 18%; width: 76%; height: 64%; object-fit: contain; filter: drop-shadow(0 3px 4px #1c1028bc); }
.dog-showcase .series-timeline li > .series-timeline-link h3 { align-self: end; }
.dog-showcase .series-timeline li > .series-timeline-link p { align-self: start; }
@media(max-width:700px) { .dog-showcase .series-timeline li > .series-timeline-link { grid-template-columns: 82px minmax(0,1fr); column-gap: 10px; } .dog-showcase .series-timeline-thumb { aspect-ratio: 1; } }

/* Keep the shared navigation in view while scrolling. */
.dog-showcase .showcase-nav { position: fixed; top: 24px; right: 0; left: 0; inset-block-end: auto; z-index: 100; border-radius: 16px 16px 0 0; }
.dog-showcase main > section[id] { scroll-margin-top: 112px; }
.dog-info-page .showcase-nav { position: sticky; top: 12px; z-index: 100; }
@media (max-width: 720px) {
  .dog-showcase .showcase-nav { top: 0; width: 100%; margin: 0; border-radius: 0; }
  .dog-showcase .showcase-hero { padding-top: 90px; }
  .dog-showcase main > section[id] { scroll-margin-top: 90px; }
  .dog-info-page .showcase-nav { top: 0; }
}

/* Related dog-themed title outside The Dog House series */
.dog-showcase .series-game-card--related { grid-column: 1 / -1; padding: 0; }
.dog-showcase .series-game-card--related .series-game-card__link { display: grid; grid-template-columns: minmax(240px, 360px) minmax(0, 1fr); }
.dog-showcase .series-game-card--related .series-game-art { height: 100%; min-height: 240px; aspect-ratio: auto; }
.dog-showcase .series-game-card--related .series-game-art img { object-fit: cover; }
.dog-showcase .series-related-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 26px 30px; }
.dog-showcase .series-related-label { color: #8b3a2a; font-size: 11px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.dog-showcase .series-game-card--related h3,.dog-showcase .series-game-card--related p { margin-left: 0; margin-right: 0; }
.dog-showcase .series-related-link { display: inline-flex; align-items: center; margin-top: 16px; padding: 11px 16px; border: 2px solid #69402b; border-radius: 7px; background: #ffd56b; color: #3b241b; font-size: 13px; font-weight: 900; text-decoration: none; box-shadow: 0 3px 0 #9b6038; }
.dog-showcase .series-related-link:hover { background: #ffe69c; transform: translateY(-2px); }
@media(max-width:700px) { .dog-showcase .series-game-card--related .series-game-card__link { grid-template-columns: 1fr; } .dog-showcase .series-game-card--related .series-game-art { min-height: 0; aspect-ratio: 16/9; } .dog-showcase .series-related-copy { padding: 20px; } }
.dog-showcase .series-game-card h3 a{color:inherit;text-decoration:none}
.dog-showcase .series-game-card h3 a:hover,.dog-showcase .series-game-card h3 a:focus-visible{color:#a8452d;text-decoration:underline}

.dog-showcase .series-game-card__link { display: block; height: 100%; color: inherit; text-decoration: none; }
.dog-showcase .series-game-card__link:focus-visible,.dog-showcase .series-timeline-link:focus-visible { outline: 3px solid #f3a327; outline-offset: 4px; }
.dog-showcase .series-game-card__link:hover h3,.dog-showcase .series-timeline-link:hover h3 { color: #a8452d !important; }
.dog-showcase .series-timeline-link { color: inherit; text-decoration: none; transition: transform .2s ease,box-shadow .2s ease; }
.dog-showcase .series-timeline-link:hover { transform: translateY(-3px); box-shadow: 0 6px 0 #bd8851; }

/* Game directory pinned directly below the homepage navigation. */
.dog-showcase .games-bar { position: fixed; top: 102px; right: 0; left: 0; width: min(calc(100% - 48px), 1320px); margin-inline: auto; z-index: 99; overflow-x: auto; border-block: 2px solid #6f3c23; border-radius: 0 0 16px 16px; background: #321845; box-shadow: 0 5px 12px #24122f55; scrollbar-width: none; }
.dog-showcase .games-bar::-webkit-scrollbar { display: none; }
.dog-showcase .games-bar ul { display: flex; align-items: center; gap: 4px; width: min(100% - 48px,1320px); min-width: max-content; margin: 0 auto; padding: 7px 0; list-style: none; }
.dog-showcase .games-bar a { display: block; padding: 8px 12px; border-radius: 6px; color: #fff1d9; font-size: 12px; font-weight: 900; text-decoration: none; white-space: nowrap; }
.dog-showcase .games-bar a:hover,.dog-showcase .games-bar a:focus-visible { background: #ffd66d; color: #3a1c26; }
.dog-showcase .showcase-hero { padding-top: 174px; }
.dog-showcase main > section[id] { scroll-margin-top: 170px; }
@media(max-width:720px) { .dog-showcase .games-bar { top: 70px; width: 100%; } .dog-showcase .games-bar ul { width: max-content; min-width: 100%; padding: 6px 10px; } .dog-showcase .games-bar a { padding: 7px 10px; font-size: 11px; } .dog-showcase .showcase-hero { padding-top: 142px; } .dog-showcase main > section[id] { scroll-margin-top: 130px; } }

@media (min-width: 721px) {
  .dog-showcase .brand-mark { width: 300px; }
}
@media (max-width: 720px) {
  .dog-showcase .nav-inner .brand-mark { width: min(36vw, 140px); }
}


/* Reuse the homepage navigation and game directory on every inner page. */
.dog-info-page .dog-site-header { height: 0; background: transparent; }
.dog-info-page .dog-site-header .showcase-nav {
  position: fixed; top: 24px; right: 0; left: 0; z-index: 100;
  width: min(calc(100% - 48px), 1320px); margin: 0 auto;
  border: 4px solid #5d2d1a; border-radius: 16px 16px 0 0;
  background: repeating-linear-gradient(176deg, #9c5730 0 18px, #8b4827 18px 35px, #a76035 35px 42px) !important;
  box-shadow: inset 0 3px 0 #d58d48, inset 0 -5px 0 #5e2e1b, 0 12px 16px #46230e66;
}
.dog-info-page .dog-site-header .nav-inner { min-height: 70px; padding: 0 18px; justify-content: flex-end; gap: 3px; }
.dog-info-page .dog-site-header .brand-lockup { position: static; }
.dog-info-page .dog-site-header .brand-mark { position: absolute; top: -17px; left: 4px; width: 300px; max-width: none; }
.dog-info-page .dog-site-header .games-bar { position: fixed; top: 102px; right: 0; left: 0; z-index: 99; width: min(calc(100% - 48px), 1320px); margin-inline: auto; }
.dog-info-page .info-shell { padding-top: 190px; }
.dog-info-page.dog-game-page .game-detail { padding-top: 190px; }
@media (max-width: 720px) {
  .dog-info-page .dog-site-header .showcase-nav { top: 0; width: 100%; border-inline: 0; border-radius: 0; }
  .dog-info-page .dog-site-header .nav-inner { min-height: 62px; padding: 0 8px; }
  .dog-info-page .dog-site-header .brand-mark { top: 9px; width: min(36vw, 140px); }
  .dog-info-page .dog-site-header .games-bar { top: 70px; width: 100%; }
  .dog-info-page .info-shell { padding-top: 160px; }
  .dog-info-page.dog-game-page .game-detail { padding-top: 160px; }
}

/* Keep the RTL logo clear of language and action controls. */
html[dir="rtl"] .dog-showcase .showcase-nav .brand-mark,
html[dir="rtl"] .dog-info-page .dog-site-header .brand-mark { left: auto; right: 4px; }
html[dir="rtl"] .dog-showcase .showcase-nav .nav-inner,
html[dir="rtl"] .dog-info-page .dog-site-header .nav-inner { justify-content: flex-end; }

/* Legacy translated footers use footer-inner rather than footer-concept. */
.dog-showcase .showcase-footer .footer-inner .footer-wordmark {
  position: relative; left: auto; right: auto;
  width: min(236px, 100%); max-width: 100%;
}
@media (max-width: 720px) {
  .dog-showcase .showcase-footer .footer-inner { grid-template-columns: minmax(0, 1fr); }
  .dog-showcase .showcase-footer .footer-brandline,
  .dog-showcase .showcase-footer .footer-meta,
  .dog-showcase .showcase-footer .footer-links,
  .dog-showcase .showcase-footer .footer-disclosure { grid-column: 1; grid-row: auto; min-width: 0; }
  .dog-showcase .showcase-footer .footer-meta { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .dog-showcase .showcase-footer .footer-meta span { overflow-wrap: anywhere; }
}

/* Keep the antispam field invisible without expanding RTL page width. */
.dog-showcase .footer-concept__honeypot { left: 0 !important; right: auto !important; top: 0; clip-path: inset(50%); pointer-events: none; }
.dog-info-page .footer-concept__honeypot { left: 0 !important; right: auto !important; top: 0; clip-path: inset(50%); pointer-events: none; }
/* Align footer menu dividers with the reading direction on RTL locales. */
html[dir="rtl"] .dog-showcase .footer-concept__menu { border-right: 0; border-left: 1px solid #a66f4d; }
