/* La identidad original se conserva en styles.css y en los banners existentes. */
[hidden] { display:none !important; }
.catalog-v2 { --catalog-line:rgba(148,163,184,.16); --catalog-surface:#111524; background-color:#090c14; }
.catalog-v2 img { max-width:100%; }
.catalog-v2 h1,.catalog-v2 h2,.catalog-v2 h3 { font-family:var(--font-heading); line-height:1.08; }
.catalog-v2 p { color:#aebbd0; }
.catalog-v2 a { text-underline-offset:4px; }
.catalog-v2 a:focus-visible,.catalog-v2 button:focus-visible,.catalog-v2 input:focus-visible { outline:3px solid #67e8f9; outline-offset:5px; }
.catalog-v2 section[id],.catalog-v2 #sobre-el-juego { scroll-margin-top:100px; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.skip-link { position:fixed;z-index:500;left:20px;top:-100px;background:#67e8f9;color:#07111b;padding:12px 20px;border-radius:8px; }
.skip-link:focus { top:10px; }
.site-header { position:sticky;top:0;z-index:100;background:rgba(9,12,20,.95);border-bottom:1px solid var(--catalog-line);backdrop-filter:blur(18px); }
.site-header-inner { display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:30px; }
.site-header .brand-logo { flex-shrink:0; }
.site-navigation { display:flex;align-items:center;gap:26px; }
.site-navigation a { color:#c3cce0;font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap; }
.site-navigation a:hover { color:#67e8f9; }
.menu-toggle { display:none;align-items:center;gap:8px;min-height:44px;padding:8px 14px;color:#e2e8f0;background:#161d30;border:1px solid var(--catalog-line);border-radius:10px;cursor:pointer;font:600 14px var(--font-body); }
.catalog-hero { padding:38px 0 66px; }
.catalog-hero .main-studio-banner-wrapper { margin-bottom:0; }
.catalog-hero .main-studio-banner-img { width:100%;height:auto;display:block; }
.catalog-v2 .animated-studio-banner {
  isolation:isolate;cursor:default;animation:none;transform:none;
  border:1px solid #354b6c;box-shadow:0 14px 45px #0005;
  --banner-x:0px;--banner-y:0px;
}
.catalog-v2 .animated-studio-banner:hover { transform:none;border-color:#527191;box-shadow:0 14px 45px #0005; }
.catalog-v2 .animated-studio-banner::after { content:none;animation:none; }
.catalog-v2 .animated-studio-banner .main-studio-banner-img,
.catalog-v2 .animated-studio-banner:hover .main-studio-banner-img { animation:none;transform:none;object-fit:contain; }
.banner-effects { position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1;contain:paint; }
.banner-depth { position:absolute;inset:-12px;transform:translate3d(var(--banner-x),var(--banner-y),0);transition:transform .35s ease-out; }
.banner-aura { position:absolute;border-radius:50%;opacity:.15;animation:studio-aura 11s ease-in-out infinite; }
.banner-aura-cyan { left:32%;top:-28%;width:40%;height:110%;background:radial-gradient(ellipse,#67e8f95c,transparent 65%); }
.banner-aura-violet { right:0;bottom:-40%;width:65%;height:115%;background:radial-gradient(ellipse,#a78bfa70,transparent 65%);animation-delay:-5s; }
.banner-sweep { position:absolute;top:-10%;bottom:-10%;left:-50%;width:45%;background:linear-gradient(110deg,transparent 10%,#a5f3fc12 40%,#e0f2fe35 50%,#c4b5fd12 60%,transparent 90%);transform:translate3d(0,0,0);opacity:0;animation:studio-sweep 14s ease-in-out infinite; }
.banner-orbit { position:absolute;left:49%;top:22%;width:12%;aspect-ratio:1;border:1px solid #a5f3fc20;border-left-color:#a5f3fc80;border-right-color:#c4b5fd65;border-radius:50%;box-shadow:0 0 12px #67e8f918;opacity:.55;animation:studio-orbit 24s linear infinite; }
.banner-spark { position:absolute;left:var(--spark-x);top:var(--spark-y);width:var(--spark-size,3px);height:var(--spark-size,3px);border-radius:50%;background:#c3faff;box-shadow:0 0 7px 1px #67e8f970;opacity:0;animation:studio-spark var(--spark-duration,7s) ease-in-out var(--spark-delay,0s) infinite; }
.banner-spark:nth-of-type(3n) { background:#e7d7ff;box-shadow:0 0 8px 1px #a78bfa70; }
.banner-edge { position:absolute;inset:0;border:1px solid #67e8f950;border-radius:inherit;opacity:.35;animation:studio-edge 9s ease-in-out infinite;pointer-events:none; }
.animated-studio-banner .banner-animated { animation-play-state:paused; }
.animated-studio-banner[data-banner-motion=running] .banner-animated { animation-play-state:running; }
.banner-toolbar { display:flex;justify-content:flex-end;margin:10px 0 0;min-height:30px; }
.banner-motion-toggle { display:inline-flex;gap:6px;align-items:center;font:500 11px var(--font-body);padding:7px 10px;border:1px solid #34415b;border-radius:8px;background:#0f1829;color:#aebfd7;cursor:pointer;min-height:32px; }
.banner-motion-toggle:hover { color:#c8f6ff;border-color:#5d8598; }
@keyframes studio-aura { 0%,100% { opacity:.1;transform:scale(.93); } 50% { opacity:.32;transform:scale(1.06); } }
@keyframes studio-sweep { 0%,9% { transform:translate3d(0,0,0);opacity:0; } 12% { opacity:.7; } 36%,100% { transform:translate3d(350%,0,0);opacity:0; } }
@keyframes studio-orbit { from { transform:rotate(0deg) scaleY(.78); } to { transform:rotate(360deg) scaleY(.78); } }
@keyframes studio-spark { 0%,100% { opacity:0;transform:translate3d(0,5px,0) scale(.6); } 30% { opacity:.8; } 80% { opacity:0;transform:translate3d(9px,-24px,0) scale(1.05); } }
@keyframes studio-edge { 0%,100% { opacity:.25; } 50% { opacity:.75; } }
@media(max-width:600px) {
  .banner-spark:nth-of-type(n+9) { display:none; }
  .banner-depth { transition:none; }
  .banner-orbit { border-width:1px; }
  .banner-motion-toggle { font-size:10px;min-height:36px; }
}
@media(prefers-reduced-motion:reduce) {
  .animated-studio-banner:not([data-banner-preference=full]) .banner-effects,
  .animated-studio-banner:not([data-banner-preference=full]) .banner-edge { display:none; }
  .animated-studio-banner:not([data-banner-preference=full]) .banner-animated { animation:none !important; }
}
.catalog-welcome { display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding:48px 0 36px; }
.eyebrow { font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:800;color:#67e8f9 !important;margin-bottom:13px; }
.catalog-welcome h1 { font-size:clamp(42px,5.3vw,72px);font-weight:700;letter-spacing:-1px;margin-bottom:18px; }
.catalog-welcome h1 span { color:#67e8f9; }
.catalog-welcome p:not(.eyebrow) { font-size:16px;max-width:570px;line-height:1.75; }
.catalog-hero-links { display:flex;flex-direction:column;gap:12px;min-width:225px;padding-bottom:5px; }
.catalog-v2 .btn { min-height:46px;font-size:16px;padding:11px 21px;white-space:normal;text-align:center;line-height:1.35; }
.division-banners { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px; }
.division-banners a { display:block;overflow:hidden;border:1px solid var(--catalog-line);border-radius:14px;background:#101523;text-decoration:none; }
.division-banners img { width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;display:block;transition:transform .25s; }
.fragment-alias { display:block;scroll-margin-top:100px; }
.division-banners a:hover img { transform:scale(1.03); }
.division-banners span { display:block;padding:12px 15px;font-size:12px;font-weight:700;color:#cdd9ed; }
.catalog-directory { padding:62px 0 80px;border-top:1px solid var(--catalog-line);background:rgba(6,9,16,.5); }
.catalog-heading { display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px; }
.catalog-heading h2 { font-size:clamp(32px,4vw,45px); }
.catalog-heading>p { font-size:13px;line-height:1.7; }
.catalog-tools { padding:22px;background:#101625;border:1px solid var(--catalog-line);border-radius:18px;margin-bottom:50px; }
.catalog-search { display:flex;gap:14px;align-items:center;background:#090e1b;border:1px solid #303e58;border-radius:11px;padding:0 15px; }
.catalog-search>span:not(.sr-only) { font-size:30px;color:#67e8f9; }
.catalog-search input { width:100%;min-width:0;background:transparent;border:0;padding:14px 0;font:14px var(--font-body);color:#f1f5f9;outline:none; }
.catalog-search input::placeholder { color:#8797b4; }
.catalog-filter-group { display:flex;flex-wrap:wrap;gap:9px;margin-top:17px; }
.catalog-filter-group button { min-height:40px;padding:8px 14px;border:1px solid #33415a;border-radius:9px;color:#bdcbe1;background:transparent;cursor:pointer;font:600 12px var(--font-body); }
.catalog-filter-group button[aria-pressed=true] { color:#071622;background:#67e8f9;border-color:#67e8f9; }
.catalog-result-count { font-size:12px;margin:14px 0 0 !important;color:#96a9c5 !important; }
.catalog-section-block { margin-top:54px; }
.catalog-section-block+.catalog-section-block { padding-top:48px;border-top:1px solid var(--catalog-line); }
.catalog-section-heading { display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px; }
.catalog-section-heading h2 { font-size:34px;display:flex;align-items:center;gap:11px;margin-bottom:12px; }
.catalog-section-heading h2>span:first-child { font-size:24px; }
.catalog-section-heading p:not(.eyebrow) { font-size:13px;line-height:1.7;max-width:680px; }
.section-count { font:600 12px var(--font-body);display:inline-grid;place-items:center;min-width:28px;height:28px;border:1px solid #33415a;border-radius:50%;color:#9bacc7; }
.section-top-link { flex-shrink:0;color:#8ea1c0;font-size:11px;text-decoration:none;padding:10px 0; }
.catalog-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;align-items:stretch; }
.catalog-card { min-width:0;display:flex;flex-direction:column;overflow:hidden;border-radius:17px;border:1px solid #26314a;background:linear-gradient(145deg,#131b2d,#0f1422);transition:transform .2s,border-color .2s; }
.catalog-card:hover { border-color:var(--card-accent,#67e8f9);transform:translateY(-4px); }
.catalog-card-media { display:block;position:relative;aspect-ratio:315/200;background:#080b12;overflow:hidden; }
.catalog-card-media img { width:100%;height:100%;object-fit:contain;display:block; }
.status-pill { display:inline-flex;align-items:center;max-width:100%;border:1px solid rgba(103,232,249,.3);color:#d5f7ff;background:#102633;font-size:10px;font-weight:700;letter-spacing:.03em;padding:5px 9px;border-radius:7px;line-height:1.4; }
.catalog-card-media .status-pill { position:absolute;bottom:12px;left:12px;box-shadow:0 2px 12px #0008; }
.status-pending { background:#3c3015;color:#fde7a1;border-color:#7c6531; }
.catalog-card-body { display:flex;flex-direction:column;flex:1;padding:23px; }
.card-genre { color:var(--card-accent,#67e8f9) !important;text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:800;margin-bottom:11px; }
.catalog-card h3 { font-size:25px;font-weight:700;margin-bottom:12px; }
.catalog-card h3 a { color:#f1f5f9;text-decoration:none; }
.catalog-card h3 a:hover { color:var(--card-accent,#67e8f9); }
.card-summary { font-size:12px;line-height:1.8;flex:1;margin-bottom:18px; }
.card-tags { list-style:none;display:flex;gap:7px;flex-wrap:wrap;margin:0 0 22px;padding:0; }
.card-tags li { font-size:9px;padding:4px 8px;border:1px solid #35415a;border-radius:5px;color:#aebdd5; }
.catalog-card-actions { border-top:1px solid #28334a;padding-top:18px;display:flex;flex-direction:column;gap:12px;align-items:stretch; }
.catalog-card-actions .btn { font-size:14px; }
.catalog-grid>.catalog-card:only-child { grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); }
.catalog-grid>.catalog-card:only-child .catalog-card-media { aspect-ratio:auto;min-height:265px; }
.catalog-grid>.catalog-card:only-child .catalog-card-body { padding:30px; }
.catalog-grid>.catalog-card:only-child .catalog-card-actions { flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap; }
.catalog-grid>.catalog-card:only-child .card-summary { max-width:640px;font-size:14px; }
.card-play-link { text-align:center;font-size:11px;color:#a2b8d6;text-decoration:none; }
.card-play-link:hover { color:#67e8f9; }
.pending-note,.asset-price { font-size:11px;color:#b9c6dc;text-align:center; }
.catalog-empty { text-align:center;padding:50px 20px;border:1px dashed #475569;border-radius:15px; }
.future-section { border-top:1px solid var(--catalog-line);padding:75px 0;background:radial-gradient(ellipse at top,rgba(245,158,11,.05),transparent 60%); }
.future-section h2,.local-arcade-section h2 { font-size:40px;margin-bottom:14px; }
.section-intro { font-size:15px;margin-bottom:30px; }
.project-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px; }
.project-grid article { border:1px solid #344057;background:#111827;border-radius:16px;overflow:hidden; }
.project-grid article>img { width:100%;height:190px;object-fit:cover;display:block; }
.project-grid article>div { padding:24px; }
.project-grid h3 { font-size:26px;margin:15px 0 13px; }
.project-grid p { font-size:12px;line-height:1.8; }
.project-grid a { display:inline-block;margin-top:18px;font-size:12px;color:#67e8f9;text-decoration:none; }
.project-text { background:radial-gradient(ellipse at top right,#28324d,transparent),#111827 !important;display:flex;align-items:center; }
.project-mark { display:block;font-size:70px;color:#facc15;line-height:1;margin-bottom:22px; }
.local-arcade-section { padding:65px 0;border-top:1px solid var(--catalog-line); }
.local-arcade-grid { display:grid;grid-template-columns:1fr 1.25fr;gap:50px;align-items:center; }
.local-arcade-grid>div { min-width:0; }
.local-arcade-grid p { font-size:13px;line-height:1.8; }
.local-arcade-links { display:flex;gap:10px;flex-wrap:wrap;margin-top:25px; }
.local-arcade-links .btn { font-size:13px; }
.local-arcade-links .text-link { width:100%;margin-top:10px; }
.catalog-v2 .hero-arcade-card { width:100%;max-width:100%;min-width:0; }
.catalog-v2 .arcade-card-header { gap:12px;flex-wrap:wrap;font-size:11px; }
.arcade-help { padding:12px;text-align:center;font-size:10px !important; }
.arcade-placeholder { position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:7px;background:radial-gradient(ellipse at center,#1d3453,#0b101e); }
.arcade-placeholder>span { color:#67e8f9;font-size:40px; }.arcade-placeholder strong { font:600 24px var(--font-heading); }.arcade-placeholder small { color:#9eb1cf;font-size:11px; }
.site-footer { padding:45px 0;border-top:1px solid var(--catalog-line);background:#070a11; }
.footer-content { display:grid;gap:12px; }
.footer-brand { font-family:var(--font-heading);font-size:21px;color:#dbe7f9;text-decoration:none;font-weight:700; }
.footer-content p { font-size:12px; }
.footer-links-new { display:flex;flex-wrap:wrap;gap:22px;margin:6px 0; }
.footer-links-new a { font-size:12px;color:#9eb5d2;text-decoration:none; }
.footer-content small { font-size:10px;color:#7f91af; }
.text-link { font-size:13px;color:#67e8f9;text-decoration:none; }
.landing-container { padding-bottom:65px; }
.breadcrumbs { display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:#899cba;margin:30px 0; }
.breadcrumbs a { color:#c4d1e9;text-decoration:none; }
.landing-hero { display:grid;grid-template-columns:1.08fr 1fr;gap:45px;align-items:center;padding:14px 0 55px; }
.landing-cover { border:1px solid #33415a;border-radius:22px;background:radial-gradient(ellipse at center,#192338,#090e18);overflow:hidden; }
.landing-cover img { display:block;width:100%;height:auto;max-height:620px;object-fit:contain; }
.landing-headline { min-width:0; }
.landing-headline>.eyebrow { color:var(--landing-accent) !important; }
.landing-headline h1 { margin:20px 0;font-size:clamp(38px,4.2vw,62px);letter-spacing:-.5px;overflow-wrap:break-word; }
.landing-tagline { font-size:20px;color:var(--landing-accent) !important;font-family:var(--font-heading);font-weight:600;line-height:1.4; }
.landing-summary { font-size:14px;line-height:1.9;margin:17px 0 20px; }
.landing-headline .card-tags li { font-size:11px; }
.landing-actions { display:flex;flex-wrap:wrap;gap:12px; }
.store-status { border:1px solid #75613c;background:#3b2d153d;border-radius:10px;padding:14px 16px;font-size:12px;line-height:1.8; }
.store-status strong,.store-status span { display:block; }
.store-status strong { color:#fde68a;font-size:13px; }
.landing-body-grid { display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:55px;padding:55px 0;border-top:1px solid var(--catalog-line); }
.landing-about h2,.landing-gallery h2,.more-games h2,.trailer-section h2 { font-size:35px;margin-bottom:25px; }
.landing-about>p:not(.eyebrow) { font-size:14px;line-height:1.9;margin-bottom:18px; }
.feature-list { list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:28px; }
.feature-list li { border:1px solid #2c3950;background:#121a2a;padding:17px;border-radius:10px;font-size:12px;line-height:1.6;color:#d5e0f0; }
.feature-list span { color:var(--landing-accent);display:block;font-size:19px;margin-bottom:9px; }
.game-information { padding:25px;border:1px solid #2b3952;border-radius:15px;background:#0e1523;align-self:start; }
.game-information h2 { font-size:25px;margin-bottom:22px; }
.game-information dl>div { padding:13px 0;border-bottom:1px solid #29364a;display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px; }
.game-information dt { font-size:11px;color:#91a1bb; }
.game-information dd { font-size:12px;color:#dde8f8; }
.game-information h3 { font-size:20px;margin:25px 0 14px; }
.game-information p { font-size:11px;line-height:1.85;margin-bottom:12px; }
.game-information .text-link { display:inline-block;margin-top:15px;font-size:11px; }
.landing-gallery { padding:40px 0 55px;border-top:1px solid var(--catalog-line); }
.gallery-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px; }
.gallery-grid a { display:block;border:1px solid #34425a;border-radius:13px;background:#070c16;overflow:hidden; }
.gallery-grid img { display:block;width:100%;height:100%;aspect-ratio:16/10;object-fit:contain; }
.trailer-section { padding:35px;border-radius:18px;border:1px solid #34415a;background:radial-gradient(ellipse at top right,#253e58,transparent),#0f1726;margin:20px 0 60px; }
.trailer-section h2 { margin-bottom:15px; }
.trailer-section p:not(.eyebrow) { margin-bottom:23px;font-size:14px; }
.more-games { padding:45px 0;border-top:1px solid var(--catalog-line); }
.landing-final { margin-top:35px;border-radius:20px;border:1px solid #34445d;background:radial-gradient(ellipse at top,#122c43,transparent),#111a29;padding:45px;text-align:center; }
.landing-final h2 { font-size:34px;margin-bottom:24px; }
.landing-final p { font-size:13px;line-height:1.8;margin-bottom:23px; }
.landing-final .text-link { display:block;margin-top:22px; }
.category-page { padding-top:35px;padding-bottom:70px; }
.category-page h1 { font-size:55px;margin:16px 0; }
.category-banner { max-width:520px;margin-bottom:35px; }
.category-banner img { width:100%;height:auto;border-radius:15px; }
.standalone-links { padding:40px 0;display:flex;flex-wrap:wrap;gap:15px; }
.standalone-links h2 { width:100%;font-size:30px;margin-bottom:12px; }
.asset-large-price { font:700 33px var(--font-heading);color:#6ee7b7 !important;margin:17px 0; }
.asset-purchase-links { display:grid;gap:12px;margin:22px 0; }
.asset-model-section { padding:40px 0;border-top:1px solid var(--catalog-line); }
.asset-model-section h2 { font-size:35px;margin-bottom:18px; }
.asset-model-section>p:not(.eyebrow) { font-size:13px;margin-bottom:22px; }
.asset-model-section model-viewer { display:block;width:100%;height:500px;background:#0c1321;border:1px solid #34425a;border-radius:18px; }
@media(max-width:1100px) {
  .site-navigation { gap:17px; }.site-navigation a { font-size:12px; }
  .catalog-grid { gap:17px; }.catalog-card-body { padding:19px; }
  .catalog-card h3 { font-size:23px; }
  .landing-hero { gap:30px; }
}
@media(max-width:1050px) {
  .catalog-js .menu-toggle { display:flex; }
  .site-header-inner { min-height:74px; }
  .catalog-js .site-navigation { display:none;position:absolute;top:100%;left:0;right:0;padding:20px 24px;background:#0d1423;border-bottom:1px solid #36465e;box-shadow:0 15px 30px #0007; }
  .catalog-js .site-navigation.is-open { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px; }
  .site-navigation a { font-size:14px;padding:13px 6px; }
  .catalog-grid,.project-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .catalog-welcome { align-items:center; }.catalog-hero-links { min-width:200px; }
  .landing-hero { grid-template-columns:1fr 1fr;gap:25px; }.landing-headline h1 { font-size:40px; }
  .landing-body-grid { gap:25px; }.feature-list { grid-template-columns:1fr; }
  .local-arcade-grid { grid-template-columns:1fr;gap:30px; }
  .project-grid article>img { height:180px; }
}
@media(max-width:600px) {
  .catalog-v2 .container { padding-left:20px;padding-right:20px; }
  .site-header-inner { gap:12px; }
  .site-header .logo-icon { width:34px;height:34px;flex-shrink:0;font-size:18px; }
  .site-header .brand-logo { gap:9px; }
  .site-header .logo-text .title { font-size:17px;letter-spacing:1px; }
  .site-header .logo-text .subtitle { font-size:9px;letter-spacing:1px; }
  .menu-toggle { padding:8px 11px;font-size:12px; }
  .catalog-hero { padding-top:22px;padding-bottom:38px; }
  .catalog-welcome { display:block;padding:31px 0 28px; }
  .catalog-welcome h1 { font-size:47px; }.catalog-welcome p:not(.eyebrow) { font-size:13px; }
  .catalog-hero-links { flex-direction:row;flex-wrap:wrap;margin-top:24px;min-width:0; }
  .catalog-hero-links .btn { flex:1;font-size:13px;padding:11px; }
  .division-banners { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
  .division-banners span { padding:10px;font-size:10px; }
  .catalog-heading { display:block; }.catalog-heading>p { margin-top:17px; }
  .catalog-heading h2 { font-size:35px; }.catalog-directory { padding-top:36px; }
  .catalog-tools { padding:15px;margin-bottom:35px; }.catalog-search input { font-size:12px; }
  .catalog-filter-group { gap:7px; }.catalog-filter-group button { font-size:10px;padding:8px 10px; }
  .catalog-section-block { margin-top:34px; }.catalog-section-block+.catalog-section-block { padding-top:35px; }
  .catalog-section-heading { display:block; }.catalog-section-heading h2 { font-size:30px; }
  .section-top-link { display:none; }.catalog-section-heading p:not(.eyebrow) { font-size:12px; }
  .catalog-grid,.project-grid { grid-template-columns:minmax(0,1fr);gap:22px; }
  .catalog-card-body { padding:22px; }.catalog-card h3 { font-size:27px; }.card-summary { font-size:13px; }
  .catalog-card-media { aspect-ratio:315/220; }.card-tags li { font-size:10px; }
  .catalog-grid>.catalog-card:only-child { display:flex; }
  .catalog-grid>.catalog-card:only-child .catalog-card-media { aspect-ratio:315/220;min-height:0; }
  .catalog-grid>.catalog-card:only-child .catalog-card-body { padding:22px; }
  .catalog-grid>.catalog-card:only-child .catalog-card-actions { flex-direction:column;align-items:stretch; }
  .future-section { padding:45px 0; }.future-section h2,.local-arcade-section h2 { font-size:34px; }
  .project-grid article>img { height:220px; }.project-grid p { font-size:13px; }
  .local-arcade-section { padding:45px 0; }.local-arcade-grid { gap:25px; }
  .arcade-card-header { padding:12px; }.arcade-card-header strong { font-size:10px; }
  .site-footer { padding:32px 0; }.footer-brand { font-size:19px; }
  .breadcrumbs { margin:22px 0;font-size:10px; }
  .landing-hero { grid-template-columns:minmax(0,1fr);gap:28px;padding-top:0;padding-bottom:35px; }
  .landing-headline h1 { font-size:43px; }.landing-cover img { max-height:440px; }
  .landing-summary { font-size:13px; }.landing-tagline { font-size:21px; }
  .landing-actions .btn { flex:1;font-size:14px; }.landing-actions .store-status { flex-basis:100%; }
  .landing-body-grid { grid-template-columns:minmax(0,1fr);padding:35px 0;gap:30px; }
  .landing-about h2,.landing-gallery h2,.more-games h2 { font-size:30px; }
  .landing-about>p:not(.eyebrow) { font-size:13px; }.feature-list { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
  .feature-list li { padding:13px;font-size:11px; }
  .game-information { padding:22px; }.gallery-grid { grid-template-columns:minmax(0,1fr);gap:15px; }
  .trailer-section { padding:25px;margin-bottom:35px; }.more-games { padding-top:35px; }
  .landing-final { padding:30px 22px; }.landing-final h2 { font-size:29px; }
  .category-page h1 { font-size:43px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .catalog-v2 :not(.banner-animated) { animation:none !important;transition:none !important; } }
.news-section { padding:65px 0;border-top:1px solid var(--catalog-line); }
.news-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.news-card { overflow:hidden;border:1px solid #2c3952;border-radius:17px;background:#111827; }
.news-card>a { display:block;aspect-ratio:16/10;background:#080d17; }
.news-card img { width:100%;height:100%;object-fit:contain;display:block; }
.news-card>div { padding:24px; }
.news-card time,.news-detail time { color:#9aacc6;font-size:12px; }
.news-card h3 { font-size:26px;margin:16px 0; }
.news-card h3 a { color:#eef3fc;text-decoration:none; }
.news-card p:not(.eyebrow) { font-size:13px;line-height:1.8;margin-bottom:20px; }
.project-placeholder { display:grid;place-items:center;min-height:350px;font-size:160px;color:#facc15;background:radial-gradient(ellipse at top right,#293a63,#0d1425);border:1px solid #34425c;border-radius:22px; }
.article-copy { max-width:780px;margin:35px auto; }
.article-copy h1 { font-size:clamp(38px,5vw,60px); }
.article-copy h2 { font-size:32px;margin:35px 0 22px; }
.article-copy p,.article-copy li { font-size:15px;line-height:1.9;margin-bottom:20px; }
.article-copy ul { padding-left:22px; }
.article-lead { margin-top:25px;font-size:19px !important; }
.article-cover { max-width:950px;margin:35px auto;border:1px solid #34425c;border-radius:18px;overflow:hidden;background:#090e19; }
.article-cover img { width:100%;max-height:600px;object-fit:contain;display:block; }
.gallery-grid>img { border:1px solid #34425c;border-radius:12px; }
.share-game { margin-bottom:12px; }.share-status { min-height:20px; }
.bio-page { max-width:1000px !important;padding-top:50px;padding-bottom:65px; }
.bio-page h1 { font-size:clamp(42px,6vw,66px);margin-bottom:20px; }
.bio-featured { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px; }
.bio-game { overflow:hidden;border:1px solid #34425c;border-radius:20px;background:#111827; }
.bio-art { display:block;aspect-ratio:1;background:#15172a; }
.bio-art img { width:100%;height:100%;object-fit:contain;display:block; }
.bio-game>div { padding:25px; }.bio-game h2 { font-size:29px;margin-bottom:15px; }
.bio-game p { font-size:13px;line-height:1.8;margin-bottom:22px; }
.bio-game .btn { width:100%; }.bio-game .text-link { display:block;text-align:center;margin-top:18px; }
.bio-more { margin-top:55px; }.bio-more>h2 { font-size:32px;margin-bottom:25px; }.bio-more .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.bio-links { display:grid;gap:13px;margin-top:45px; }.bio-links .text-link { text-align:center;padding:15px; }
@media(max-width:800px) { .news-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .news-grid,.bio-featured,.bio-more .catalog-grid { grid-template-columns:minmax(0,1fr); }.news-section { padding:40px 0; }.article-copy p,.article-copy li { font-size:14px; }.bio-page { padding-top:32px; }.bio-art { aspect-ratio:1; }.project-placeholder { min-height:230px; } }

/* Acabado V2: promociones legibles y navegación sin dependencia de JavaScript. */
.js-only { display:none; }.catalog-js .js-only { display:block; }
.home-spotlight { padding:50px 0 60px;border-block:1px solid var(--catalog-line);background:linear-gradient(110deg,#101a2c,#111021); }
.spotlight-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px; }
.spotlight-card { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;overflow:hidden;border:1px solid #34425a;border-radius:19px;background:#0e1524; }
.spotlight-art { display:block;aspect-ratio:1;background:#090e19; }
.spotlight-art img { display:block;width:100%;height:100%;object-fit:contain; }
.spotlight-card>div { min-width:0;padding:22px; }
.spotlight-card h3 { font-size:30px;margin:15px 0 13px; }.spotlight-card h3 a { color:#f1f5f9;text-decoration:none; }
.spotlight-card p { font-size:13px;line-height:1.7;margin-bottom:19px; }
.spotlight-card .btn { font-size:13px;width:100%;padding:12px 8px; }
.spotlight-card .text-link { display:block;margin-top:17px;font-size:12px; }
.catalog-empty p { margin-bottom:20px; }.not-found { min-height:55vh;padding-block:90px; }
.catalog-v2 .arcade-canvas { touch-action:pan-y; }
@media(max-width:1050px) { html:not(.catalog-js) .site-header-inner { flex-wrap:wrap; } html:not(.catalog-js) .site-navigation { display:flex;flex-wrap:wrap;padding:0 0 16px; } .spotlight-card { grid-template-columns:minmax(0,1fr); }.spotlight-art { max-height:380px; }.spotlight-card>div { padding:24px; } }
@media(max-width:600px) { .home-spotlight { padding:34px 0 40px; }.spotlight-grid { grid-template-columns:minmax(0,1fr); }.spotlight-art { max-height:none; }.spotlight-card h3 { font-size:32px; }.catalog-search input { font-size:16px; }.catalog-filter-group button { min-height:44px; }.banner-motion-toggle { min-height:44px; } }

/* Un único control persistente de música, sin invadir navegación o contenido. */
.site-music { position:fixed;right:16px;bottom:16px;z-index:120;max-width:calc(100vw - 32px); }
.site-music button { min-height:44px;padding:10px 16px;border:1px solid #47667e;border-radius:30px;background:#101a2bef;color:#d8f8ff;font:600 13px var(--font-body);box-shadow:0 4px 20px #0006;cursor:pointer; }
.site-music button[aria-pressed=true] { border-color:#67e8f9; }
.site-music button:disabled { opacity:.65;cursor:default; }
@media (hover:hover) and (pointer:fine) {
  .animated-studio-banner[data-banner-motion=running] .banner-depth { will-change:transform; }
}
