/* Shared with Phantom Labyrinth's visual language: neutral planes,
   silver text, restrained gold titles, fading selection bands. */
:root {
  --bg:#161618;
  --panel:#212123;
  --text:#d3d3d3;
  --muted:#aaa9ad;
  --line:#454547;
  --accent:#c9bba1;
  font-family:Arial,"Yu Gothic","Meiryo","Malgun Gothic",sans-serif;
}
body {
  background:radial-gradient(ellipse at 50% 8%,#262628 0%,#19191b 48%,#111113 100%);
}
::selection {background:#6b4d23;color:#eee}
h1,h2,h3,.brand,.contact-panel h1,.page-head h1,
.studio-profile h2,.studio-philosophy>h2 {
  font-family:inherit;
  font-weight:400;
  text-shadow:0 0 12px #0008;
}
.brand {color:var(--accent);letter-spacing:.04em}
.brand img {width:44px;height:44px}
.brand small {color:var(--muted)}
.header {border-bottom-color:var(--line)}
.nav,.languages,.footer-links {
  padding:0;
  gap:6px;
  border:0;
  background:transparent;
}
.nav a,.nav .contact-link,.languages a,.footer-links a,
.social-links a,.social-section .social-links a,.text-link,.button {
  border:1px solid #515153;
  border-radius:0;
  background:linear-gradient(90deg,#21212388,#2a2a2caa,#21212388);
  box-shadow:none;
  color:var(--text);
  font-weight:400;
  letter-spacing:.025em;
  text-shadow:0 0 8px #0009;
  transition:background .18s,border-color .18s;
}
.nav a[aria-current=page],.languages a[aria-current],
.footer-links a[aria-current=page] {
  background:linear-gradient(90deg,#6b4d2308,#6b4d2370 30%,#6b4d2388 50%,#6b4d2370 70%,#6b4d2308);
  color:var(--text);
  border-color:#a4977e;
  box-shadow:0 0 12px #bda57d0c;
}
.nav a:hover,.nav .contact-link:hover,.languages a:hover,
.nav a[aria-current]:hover,.languages a[aria-current]:hover,
.footer-links a:hover,.social-links a:hover,
.social-section .social-links a:hover,.text-link:hover,.button:hover {
  background:linear-gradient(90deg,#3a3a3c44,#48484b99,#3a3a3c44);
  color:var(--text);
  border-color:#a6a6a8;
}
a:focus-visible {outline:2px solid var(--accent);outline-offset:4px}
.button {border-color:#a4977e;min-height:48px;padding:14px 28px}
.eyebrow {color:var(--accent);font-weight:400;letter-spacing:.16em}
.dot {width:4px;height:4px;border-radius:0;background:var(--accent);transform:rotate(45deg)}
.page-head h1,.details h2,.contact-panel h1,
.studio-profile h2,.studio-philosophy>h2,.philosophy-card h3,
.home-heading h1,.home-game h2 {color:var(--accent);font-weight:400}
.page-head {position:relative}
.page-head:after {
  content:"";display:block;position:absolute;bottom:28px;left:0;
  width:min(640px,100%);height:1px;
  background:linear-gradient(90deg,#69696b,#45454755,transparent);
}
.home-showcase {
  border:0;border-radius:0;background:transparent;padding:20px 0 12px;
  margin:48px 0;
}
.home-heading h1 {letter-spacing:.055em;margin-bottom:18px}
.home-heading p {color:var(--muted)}
.home-visual {
  background:#1d1d1f;border-radius:0;
  border-top:1px solid #444446;border-bottom:1px solid #333335;
}
.home-game {
  padding:30px 20px 8px;
  background:linear-gradient(90deg,transparent,#1e1e2088 25%,#1e1e2088 75%,transparent);
}
.home-game h2 {letter-spacing:.04em}
.home-actions .button,.home-actions .text-link {border-radius:0}
.game-hero {border-color:var(--line);background:var(--panel);box-shadow:none}
.game-cover-empty,.media-empty {background:#1d1d1f}
.media-empty {border:1px solid #39393b}
.details,.studio-philosophy,.social-section,.wishlist-panel,.footer {border-color:var(--line)}
.details h3,.game-info dt {color:var(--text);font-weight:400}
.game-info>div {border-bottom-color:#303032}
.studio-profile {
  border:0;border-block:1px solid var(--line);
  background:linear-gradient(90deg,transparent,#22222477 30%,#22222477 70%,transparent);
}
.studio-identity {background:transparent;border:0}
.philosophy-card {
  background:linear-gradient(90deg,#21212300,#29292b66,#21212300);
  border:0;border-block:1px solid #454547;
}
.philosophy-card h3 {font-size:22px;line-height:1.5}
.studio-profile p,.philosophy-card p {color:var(--text)}
.contact-panel {
  border:0;border-block:1px solid var(--line);
  background:linear-gradient(90deg,transparent,#222224aa 25%,#222224aa 75%,transparent);
}
.email {
  background:#19191b;border:1px solid #69696b;color:var(--text);
  font-weight:400;letter-spacing:0;
}
.footer {color:var(--muted)}
.footer-links a {min-width:70px}
html[lang=ja] p,html[lang=ja] h3 {line-break:strict;overflow-wrap:anywhere}
.game-overview p {max-width:760px;margin-bottom:22px}
.game-overview p:first-child {font-size:18px;color:var(--text)}
.game-overview p:last-child,.game-features p {margin-bottom:0}
.game-features {display:grid;gap:28px}
.game-features article {padding-bottom:28px;border-bottom:1px solid #303032}
.game-features article:last-child {padding-bottom:0;border-bottom:0}
.game-features h3 {margin:0 0 12px;color:var(--accent);font-size:21px;line-height:1.5}
.game-features p {max-width:760px}
.game-info dt {flex-shrink:0}
.game-info dd {overflow-wrap:anywhere}
@media(max-width:1000px) {
  .header {flex-wrap:wrap;height:auto;padding-block:24px}
  .nav {order:3;width:100%;justify-content:center;margin:0}
  .nav a {flex:1}
  .languages {margin-left:auto}
}
@media(max-width:500px) {
  .header {column-gap:8px;row-gap:20px}
  .brand {font-size:16px;gap:4px;letter-spacing:0}
  .brand img {width:32px;height:32px}
  .brand small {font-size:8px;letter-spacing:3px}
  .languages {gap:3px}
  .languages a {padding:9px 6px;font-size:10px;letter-spacing:0}
  .nav,.footer-links {gap:4px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
  .nav a,.footer-links a {padding:10px 3px;min-width:0;font-size:11px;letter-spacing:0}
  .home-showcase {padding:12px 0;margin:32px 0}
  .home-heading h1 {font-size:27px;letter-spacing:.02em}
  .home-game {padding-inline:6px}
  .page-head h1 {letter-spacing:-.03em}
  .studio-profile {padding:24px 8px}
  .philosophy-card {padding:24px 12px}
  .contact-panel {padding:28px 12px}
  .email {font-size:22px;letter-spacing:-.04em}
}
