/* ROSHPOSH / APPROVED-ARTWORK EDITION
   Editable, ordinary CSS. No framework or remote dependencies.
   The original styles.css handles the supporting page components;
   this file supplies the cinematic visual system and responsive home. */
:root {
  --bg: #060c14; --bg-deep: #040910; --surface: #0b141f;
  --text: #f6f8fc; --muted: #aeb9c7; --accent: #ff2992;
  --coral: #ff855f; --blue: #a3d3ff; --line: #202a38;
  --container: 1360px; --font: Arial, Helvetica, sans-serif;
}
body { background: var(--bg); font-size: 15px; }
.container { width: calc(100% - 120px); max-width: var(--container); }
h1,h2,h3,h4 { font-family: var(--font); }
.eyebrow { color: #ff538f; font-size: 11px; font-weight: 700; letter-spacing: 2.6px; }
.gradient-text { background: linear-gradient(100deg,#ff079f 4%,#ff7861 98%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.button { border-radius: 9px; font-size: 12px; font-weight: 700; }
.button-primary { background: linear-gradient(105deg,#f9009b 0%,#ff426f 55%,#ff865f 100%); box-shadow: 0 5px 25px #ff27891c; }
.button-primary:hover { box-shadow: 0 9px 32px #ff27893b; }
.button-large { min-height: 49px; padding: 14px 25px; font-size: 13px; }
.button-outline { background: #07101a40; border-color: #64707c; }
.button-outline:hover { background: #102131; border-color: #bec7d1; }
.nav-row { min-height: 78px; gap: 22px; }
.brand img { width: 42px; height: 42px; }
.brand > span { font-size: 25px; font-weight: 800; letter-spacing: -.8px; }
.brand small { font-size: 9px; letter-spacing: 1px; margin-left: 2px; }
.main-nav { gap: 26px; }
.main-nav > a { font-size: 12px; font-weight: 600; padding: 28px 0; }
.main-nav > a[aria-current="page"]::after { bottom: 16px; background: linear-gradient(90deg,#ff008e,#ff7859); }
.site-header { background: #040a12f2; border-bottom: 1px solid #1b27334f; }
.header-cta { font-size: 12px; min-height: 44px; padding: 12px 20px; }

/* Hero: the user's approved montage is one independent artwork layer. */
.cinema-hero { position: relative; isolation: isolate; overflow: hidden; background: #060c14; min-height: 570px; }
.cinema-art { position: absolute; inset: 0 0 0 auto; width: 87%; z-index: -2; }
.cinema-art img { width: 100%; height: 100%; object-fit: cover; object-position: 62% 48%; }
.cinema-shade { position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg,#060c14 0%,#060c14fa 23%,#060c14c9 33%,#060c1466 43%,transparent 61%),linear-gradient(0deg,#060c14 0%,#060c144d 15%,transparent 42%); }
.cinema-inner { position: relative; min-height: 570px; display: flex; align-items: center; padding: 36px 0 96px; }
.cinema-copy { width: 48%; max-width: 620px; }
.cinema-eyebrow { display: flex; align-items: center; gap: 12px; color: #ff5c8c; font-size: 11px; letter-spacing: 2.8px; margin-bottom: 17px; }
.cinema-eyebrow > span { display: inline-block; width: 22px; height: 1px; background: #b05276; }
.cinema-copy h1 { font-size: clamp(45px,4.23vw,65px); line-height: 1.04; font-weight: 800; letter-spacing: -2.35px; margin: 0 0 20px; white-space: nowrap; }
.cinema-copy > p { font-size: 16px; line-height: 1.65; color: #c6cbd6; max-width: 450px; margin: 0 0 24px; }
.cinema-copy .button-row { gap: 15px; }
.cinema-copy .button-outline { min-width: 158px; }
.cinema-highlights { display: flex; margin-top: 32px; gap: 0; }
.cinema-highlights > div { padding: 0 23px; border-left: 1px solid #48536580; }
.cinema-highlights > div:first-child { padding-left: 0; border-left: 0; }
.cinema-highlights strong { display: block; font-size: 18px; font-weight: 700; line-height: 1.4; letter-spacing: -.45px; }
.cinema-highlights span { display: block; font-size: 9px; line-height: 1.5; color: #bfc8d4; margin-top: 4px; }
.cinema-caption { position: absolute; bottom: 70px; right: 34px; letter-spacing: 1.6px; font-size: 7px; color: #aec1d5; opacity: .7; }

/* Floating five-service dock and bright game gallery. */
.services-dock-wrap { position: relative; z-index: 3; background: #f7f8fc; }
.services-dock { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); position: relative; top: -59px; margin-bottom: -59px; background: linear-gradient(120deg,#07111c,#0b131e); border: 1px solid #2c36454d; border-radius: 16px; box-shadow: 0 18px 36px #01091920; padding: 25px 12px; }
.dock-service { display: flex; align-items: flex-start; gap: 14px; padding: 10px 20px; border-right: 1px solid #26324266; transition: transform .2s; }
.dock-service:last-child { border: 0; }
.dock-service:hover { transform: translateY(-3px); }
.dock-icon { color: #ff347f; display: inline-flex; margin-top: 1px; }
.dock-icon .icon { width: 28px; height: 30px; }
.dock-service h3 { margin: 0 0 8px; font-size: 13px; line-height: 1.35; letter-spacing: -.15px; font-weight: 700; }
.dock-service p { font-size: 11px; color: #adb7c5; line-height: 1.55; margin: 0; }
.premium-showcase { background: #f7f8fc; color: #07101a; padding: 33px 0 36px; }
.showcase-layout { display: grid; grid-template-columns: 255px minmax(0,1fr); gap: 37px; align-items: center; }
.showcase-intro h2 { font-size: 34px; line-height: 1.12; letter-spacing: -1.2px; margin: 0 0 12px; font-weight: 800; }
.showcase-intro > p { color: #596476; font-size: 13px; line-height: 1.65; margin-bottom: 18px; }
.showcase-button { color: #101521; border: 1px solid #d789b9; background: transparent; min-height: 42px; padding: 11px 18px; }
.showcase-button:hover { background: #f2e5f1; color: #111622; border-color: #ee4d9a; }
.showcase-arrows { display: flex; gap: 9px; margin-top: 17px; }
.showcase-arrows .icon-button { width: 32px; height: 32px; color: #222d3b; background: #fff; border-color: #d4dce6; }
.showcase-arrows .icon-button:disabled { opacity: .3; }
.showcase-gallery { min-width: 0; }
.premium-track { display: flex; align-items: stretch; gap: 14px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: #d5dce6 transparent; padding: 2px 1px 12px; }
.featured-game { border: 1px solid #e8ebf1; background: #fff; flex: 0 0 calc((100% - 42px)/4); min-width: 184px; border-radius: 12px; overflow: hidden; scroll-snap-align: start; box-shadow: 0 4px 10px #13224008; transition: box-shadow .25s,border-color .25s; }
.featured-game:hover { box-shadow: 0 9px 25px #15224018; border-color: #e3a4c3; }
.featured-image { display: block; position: relative; aspect-ratio: 1.48; overflow: hidden; }
.featured-image img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 39%; transition: transform .55s cubic-bezier(.2,.7,.2,1); }
.featured-game:hover img { transform: scale(1.06); }
.featured-open { position: absolute; display: flex; align-items: center; justify-content: center; gap: 10px; inset: 0; font-size: 12px; font-weight: 700; color: white; background: #02071488; opacity: 0; transition: opacity .25s; }
.featured-game:hover .featured-open,.featured-image:focus-visible .featured-open { opacity: 1; }
.featured-body { padding: 13px 12px 14px; }
.featured-body h3 { font-size: 12px; font-weight: 700; min-height: 31px; line-height: 1.35; letter-spacing: -.15px; margin: 0 0 9px; }
.featured-tags { display: flex; flex-wrap: wrap; gap: 4px; }
.featured-tags span { background: #eef0f5; color: #5c6274; padding: 3px 6px; border-radius: 4px; font-size: 9px; line-height: 1.35; white-space: nowrap; }
.featured-tags .concept-chip { background: #f8f0f6; color: #915b7d; }
.gallery-caption { font-size: 9px; color: #687588; margin: 3px 1px 0; }

/* Art-backed developer partnership banner. */
.developer-band { position: relative; isolation: isolate; overflow: hidden; border-bottom: 1px solid #253140; background: #050c15; }
.developer-backdrop { position: absolute; z-index: -2; right: 0; top: 0; width: 62%; height: 100%; object-fit: cover; object-position: center; opacity: .65; }
.developer-band::after { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,#050c15 4%,#050c15f2 36%,#050c15ad 58%,#050c1540 100%),linear-gradient(0deg,#050c15c4,transparent 80%); }
.developer-band-inner { display: grid; grid-template-columns: .95fr 1.05fr; gap: 65px; align-items: center; padding: 49px 0 55px; }
.developer-band-copy h2 { font-size: 37px; line-height: 1.13; margin: 0 0 16px; font-weight: 800; letter-spacing: -1.3px; }
.developer-band-copy > p { font-size: 13px; line-height: 1.7; color: #c2cad4; max-width: 465px; margin-bottom: 23px; }
.developer-band-copy .button { min-height: 44px; padding: 12px 21px; font-size: 12px; }
.developer-band-copy .button-row { gap: 12px; }
.developer-journey { padding-top: 24px; }
.journey-label { font-size: 9px; color: #becce0; letter-spacing: 2px; }
.developer-journey ol { display: grid; grid-template-columns: repeat(4,1fr); padding: 0; margin: 25px 0 19px; list-style: none; gap: 18px; text-align: center; }
.developer-journey li { position: relative; min-width: 0; }
.developer-journey li:not(:last-child)::after { content: '\2192'; position: absolute; top: 13px; right: -19px; color: #97a4b6; font-size: 23px; font-weight: 300; }
.journey-icon { display: inline-flex; width: 56px; height: 56px; align-items: center; justify-content: center; border: 1px solid #8c597433; border-radius: 50%; color: #ff4c9b; background: linear-gradient(130deg,#2a2a3be0,#0d1523e0); box-shadow: 0 6px 20px #01060e55; margin-bottom: 12px; }
.journey-icon .icon { width: 25px; height: 25px; }
.developer-journey strong { display: block; font-size: 12px; font-weight: 700; }
.developer-journey small { font-size: 9px; color: #eb5a98; margin-right: 4px; }
.developer-journey li p { font-size: 10px; line-height: 1.5; color: #c2cad5; margin: 7px 0 0; }
.journey-note { font-size: 9px; line-height: 1.55; color: #9cabbf; margin: 0; text-align: center; }

/* Continue the same design language throughout the site. */
.principles-section { padding: 66px 0 58px; background: #080f18; }
.principles-heading { display: grid; grid-template-columns: 1fr .67fr; gap: 100px; align-items: center; margin-bottom: 34px; }
.principles-heading h2 { font-size: 37px; line-height: 1.15; margin: 0; letter-spacing: -1.2px; font-weight: 750; }
.muted-heading { color: #94a1b3; }
.principles-heading > p { font-size: 13px; line-height: 1.8; margin: 0; color: #a8b5c8; }
.principles-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 30px; }
.principle { border-top: 1px solid #2c3745; padding: 26px 0 0; }
.principle > span { color: #ffa0c7; display: inline-flex; margin-bottom: 18px; }
.principle > span .icon { width: 28px; height: 28px; }
.principle h3 { font-size: 15px; margin-bottom: 12px; font-weight: 700; letter-spacing: -.25px; }
.principle p { font-size: 12px; line-height: 1.8; margin: 0; color: #97a8bb; }
.premium-home .home-faq { padding: 68px 0; background: #060c14; }
.premium-home .home-faq h2 { font-size: 36px; }
.premium-home .faq-list summary { font-size: 14px; }
.premium-home .faq-list details { border-bottom-color: #2d3848; }
.premium-home .faq-list p { font-size: 13px; }
.premium-cta { padding: 10px 0 60px; background: #060c14; }
.premium-cta-inner { position: relative; isolation: isolate; overflow: hidden; border: 1px solid #533448; border-radius: 17px; background: radial-gradient(ellipse at 96% 150%,#75184955,transparent 70%),linear-gradient(115deg,#16121e,#0c1521 70%); padding: 40px 49px; display: flex; justify-content: space-between; align-items: center; gap: 30px; }
.premium-cta h2 { font-size: 37px; letter-spacing: -1.3px; margin-bottom: 13px; line-height: 1.08; }
.premium-cta p { font-size: 12px; color: #b7bfd0; margin: 0; max-width: 460px; }
.premium-cta .button { flex-shrink: 0; }
.cta-letter { position: absolute; z-index: -1; right: 18%; bottom: -47px; font-size: 290px; font-weight: 900; line-height: 1; color: #b3387920; transform: rotate(-12deg); }
.site-footer { background: #040910; border-top-color: #202b38; }
.site-footer .brand img { width: 38px; height: 38px; }
.site-footer .brand > span { font-size: 23px; }
.footer-bottom { border-top-color: #202b38; }

/* Supporting pages: every existing page remains a real, editable HTML file. */
.page-hero { background: #08111c; }
.page-hero-inner { padding-top: 32px; padding-bottom: 60px; }
.page-hero .eyebrow { font-size: 11px; }
.page-hero h1 { font-size: clamp(40px,4.3vw,64px); letter-spacing: -2.1px; font-weight: 750; }
.page-hero-image { width: 66%; opacity: .9; }
.page-hero-image img { object-position: 70% 45%; }
.page-hero-image::after { background: linear-gradient(90deg,#08111c 0%,#08111cf0 17%,#08111c7d 49%,#08111c15 100%),linear-gradient(0deg,#08111c8a,transparent 65%); }
.page-hero-visual h1,.page-hero-visual p { max-width: 61%; }
.game-image-link { aspect-ratio: 1.5; }
.game-image-link img { object-position: center 38%; }
.game-detail-art { padding: 10px; border-color: #354050; background: #111a27; box-shadow: 0 24px 60px #0004; }
.game-detail-art img { aspect-ratio: 4/3; object-fit: cover; }
.about-art img { aspect-ratio: 16/10; object-fit: cover; }
.wide-visual img { width: 100%; max-height: 520px; object-fit: cover; }
.pitch-studio { border: 1px solid #2d3949; border-radius: 13px; overflow: hidden; margin-bottom: 30px; }
.pitch-studio img { width: 100%; aspect-ratio: 1.9; object-fit: cover; }
.pitch-studio figcaption { color: #d1a2bb; font-size: 8px; letter-spacing: 1.5px; padding: 11px 16px; background: #0d1520; }
.pitch-form { background: linear-gradient(145deg,#111c2a,#09121d); border-color: #2b3a4d; box-shadow: 0 20px 70px #0003; }
.field input:focus,.field select:focus,.field textarea:focus { border-color: #f087ba; }
.form-progress .is-active { color: #ff7eb0; }

@media (min-width: 1600px) {
 .cinema-hero,.cinema-inner { min-height: 630px; }
 .cinema-copy h1 { font-size: 66px; }
 .cinema-copy > p { font-size: 17px; }
 .cinema-art { width: 84%; }
 .cinema-highlights { margin-top: 37px; }
 .featured-image { aspect-ratio: 1.42; }
}
@media (max-width: 1250px) {
 .container { width: calc(100% - 80px); }
 .main-nav { gap: 18px; }
 .main-nav > a { font-size: 11px; }
 .brand > span { font-size: 23px; }
 .cinema-copy { width: 54%; }
 .cinema-copy h1 { font-size: 52px; }
 .cinema-hero,.cinema-inner { min-height: 535px; }
 .cinema-copy > p { max-width: 400px; font-size: 14px; }
 .cinema-art { width: 88%; }
 .cinema-shade { background: linear-gradient(90deg,#060c14 0%,#060c14fa 25%,#060c14d1 36%,#060c145e 50%,transparent 72%),linear-gradient(0deg,#060c14,transparent 35%); }
 .cinema-highlights strong { font-size: 16px; }
 .cinema-highlights > div { padding: 0 17px; }
 .dock-service { padding: 9px 11px; gap: 10px; }
 .dock-service h3 { font-size: 11px; }
 .dock-service p { font-size: 10px; }
 .dock-icon .icon { width: 24px; height: 27px; }
 .showcase-layout { grid-template-columns: 223px minmax(0,1fr); gap: 25px; }
 .showcase-intro h2 { font-size: 30px; }
 .developer-band-inner { gap: 35px; }
 .developer-band-copy h2 { font-size: 33px; }
 .developer-journey ol { gap: 13px; }
 .principles-heading { gap: 55px; }
}
@media (max-width: 980px) {
 .container { width: calc(100% - 54px); }
 .nav-row { min-height: 72px; }
 .main-nav { display: none; position: absolute; left: 20px; right: 20px; top: 80px; z-index: 52; padding: 13px 20px 22px; flex-direction: column; align-items: stretch; gap: 0; border-radius: 13px; border: 1px solid #2d3a50; box-shadow: 0 15px 60px #000b; background: #0b1522; max-height: calc(100dvh - 98px); overflow-y: auto; margin: 0; }
 .main-nav.is-open { display: flex; }
 .main-nav > a { padding: 14px 5px; font-size: 14px; border-bottom: 1px solid #243042; }
 .main-nav > a[aria-current="page"]::after { display: none; }
 .main-nav .mobile-pitch { display: inline-flex; padding: 15px; margin-top: 18px; }
 .nav-backdrop { position: fixed; inset: 72px 0 0; z-index: 51; width: 100vw; height: calc(100dvh - 72px); border: 0; background: #01060ad9; }
 .menu-toggle { display: block; position: relative; z-index: 53; }
 .header-cta { margin-left: auto; }
 .cinema-hero,.cinema-inner { min-height: 540px; }
 .cinema-copy { width: 65%; }
 .cinema-copy h1 { font-size: clamp(42px,5.9vw,53px); }
 .cinema-copy > p { max-width: 380px; }
 .cinema-art { width: 100%; right: -12%; }
 .cinema-shade { background: linear-gradient(90deg,#060c14 0%,#060c14f0 24%,#060c14bb 44%,#060c1440 71%,transparent 100%),linear-gradient(0deg,#060c14,transparent 45%); }
 .services-dock { padding: 16px 8px; }
 .dock-service { display: block; padding: 8px 13px; }
 .dock-icon { margin: 0 0 9px; }
 .dock-service h3 { font-size: 11px; }
 .dock-service p { font-size: 10px; }
 .dock-service p br { display: none; }
 .showcase-layout { grid-template-columns: 210px minmax(0,1fr); gap: 23px; }
 .featured-game { min-width: 205px; }
 .showcase-intro h2 { font-size: 29px; }
 .developer-band-inner { gap: 25px; grid-template-columns: 1fr 1fr; }
 .developer-band-copy h2 { font-size: 30px; }
 .developer-journey ol { grid-template-columns: repeat(2,1fr); gap: 20px; }
 .developer-journey li::after { display: none; }
 .journey-label { font-size: 8px; letter-spacing: 1.4px; }
 .journey-icon { height: 44px; width: 44px; margin-bottom: 7px; }
 .journey-icon .icon { width: 22px; height: 22px; }
 .journey-note { text-align: left; }
 .principles-heading { gap: 35px; grid-template-columns: 1.2fr 1fr; }
 .principles-heading h2 { font-size: 30px; }
 .principles-grid { gap: 22px; grid-template-columns: repeat(2,1fr); }
 .premium-cta-inner { padding: 32px; }
 .premium-cta h2 { font-size: 32px; }
 .page-hero-visual h1,.page-hero-visual p { max-width: 75%; }
}
@media (max-width: 700px) {
 .container { width: calc(100% - 38px); }
 .nav-row { min-height: 68px; gap: 13px; }
 .brand img { width: 34px; height: 34px; }
 .brand > span { font-size: 21px; }
 .header-cta { display: none; }
 .menu-toggle { margin-left: auto; }
 .nav-backdrop { inset: 68px 0 0; height: calc(100dvh - 68px); }
 .main-nav { top: 75px; left: 14px; right: 14px; }
 .cinema-hero { display: flex; flex-direction: column; min-height: 0; }
 .cinema-inner { min-height: 0; padding: 36px 0 0; order: 0; }
 .cinema-copy { width: 100%; max-width: none; }
 .cinema-eyebrow { font-size: 8px; letter-spacing: 1.9px; gap: 8px; margin-bottom: 16px; }
 .cinema-copy h1 { font-size: clamp(34px,7.9vw,52px); line-height: 1.08; letter-spacing: -1.45px; white-space: normal; margin-bottom: 18px; }
 .cinema-copy > p { font-size: 13px; max-width: 480px; margin-bottom: 21px; line-height: 1.7; }
 .cinema-copy .button-row { gap: 10px; }
 .cinema-copy .button-large { min-height: 45px; padding: 12px 17px; font-size: 11px; gap: 9px; }
 .cinema-copy .button-outline { min-width: 124px; }
 .cinema-highlights { margin-top: 26px; justify-content: space-between; }
 .cinema-highlights > div { padding: 0 14px; }
 .cinema-highlights > div:last-child { padding-right: 0; }
 .cinema-highlights strong { font-size: 13px; letter-spacing: -.2px; }
 .cinema-highlights span { font-size: 8px; max-width: 102px; }
 .cinema-art { position: relative; order: 1; width: 100%; height: auto; aspect-ratio: 1.65; right: auto; inset: auto; z-index: 0; margin-top: 6px; }
 .cinema-art img { width: 123%; max-width: none; height: 100%; object-fit: cover; object-position: center; transform: translateX(-18%); }
 .cinema-art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,#060c14 0%,#060c1455 13%,transparent 38%,transparent 83%,#060c14 100%); }
 .cinema-shade { display: none; }
 .cinema-caption { bottom: 23px; font-size: 6px; right: 18px; z-index: 2; letter-spacing: 1px; }
 .services-dock { grid-template-columns: repeat(2,minmax(0,1fr)); top: -10px; margin-bottom: -10px; padding: 13px 8px; border-radius: 13px; }
 .dock-service { display: flex; gap: 12px; padding: 15px 12px; border-right: 0; border-bottom: 1px solid #2c374b6b; }
 .dock-service:nth-child(odd) { border-right: 1px solid #2c374b6b; }
 .dock-service:last-child { grid-column: 1 / -1; border: 0; padding-bottom: 9px; }
 .dock-icon .icon { width: 23px; height: 24px; }
 .dock-service h3 { font-size: 11px; margin-bottom: 5px; }
 .dock-service p { font-size: 10px; max-width: 160px; }
 .dock-service:last-child p { max-width: none; }
 .premium-showcase { padding: 28px 0 30px; }
 .showcase-layout { display: block; }
 .showcase-intro { position: relative; padding-bottom: 20px; }
 .showcase-intro .eyebrow { font-size: 9px; margin-bottom: 10px; }
 .showcase-intro h2 { font-size: 30px; line-height: 1.15; margin-bottom: 11px; }
 .showcase-intro h2 br { display: none; }
 .showcase-intro > p { font-size: 12px; margin-bottom: 16px; }
 .showcase-intro > p br { display: none; }
 .showcase-arrows { position: absolute; right: 0; bottom: 21px; margin: 0; }
 .showcase-button { font-size: 11px; min-height: 40px; }
 .featured-game { flex-basis: 225px; min-width: 225px; }
 .featured-image { aspect-ratio: 1.42; }
 .featured-body h3 { font-size: 12px; }
 .gallery-caption { font-size: 8px; margin-top: 5px; line-height: 1.6; }
 .developer-band-inner { display: block; padding: 38px 0 33px; }
 .developer-band-copy h2 { font-size: 31px; line-height: 1.14; }
 .developer-band-copy > p { font-size: 12px; max-width: 440px; }
 .developer-band-copy .button { font-size: 11px; padding: 12px 17px; }
 .developer-backdrop { width: 100%; height: 60%; top: auto; bottom: 0; opacity: .72; object-position: 50% 35%; }
 .developer-band::after { background: linear-gradient(180deg,#050c15 0%,#050c15 30%,#050c15ad 65%,#050c157d 100%); }
 .developer-journey { padding-top: 29px; }
 .developer-journey ol { grid-template-columns: repeat(4,1fr); gap: 8px; margin-top: 18px; }
 .journey-label { font-size: 8px; }
 .journey-icon { width: 43px; height: 43px; }
 .developer-journey strong { font-size: 10px; }
 .developer-journey small { display: none; }
 .developer-journey li p { font-size: 9px; }
 .journey-note { font-size: 8px; text-align: center; }
 .principles-section { padding: 41px 0; }
 .principles-heading { display: block; margin-bottom: 24px; }
 .principles-heading h2 { font-size: 29px; margin-bottom: 18px; }
 .principles-heading > p { font-size: 12px; }
 .principles-grid { gap: 24px 18px; }
 .principle { padding-top: 19px; }
 .principle > span { margin-bottom: 14px; }
 .principle > span .icon { width: 24px; height: 24px; }
 .principle h3 { font-size: 13px; line-height: 1.4; }
 .principle p { font-size: 11px; }
 .premium-home .home-faq { padding: 40px 0; }
 .premium-home .home-faq h2 { font-size: 29px; }
 .premium-home .faq-list summary { font-size: 13px; }
 .premium-home .faq-list p { font-size: 12px; }
 .premium-cta { padding-bottom: 35px; }
 .premium-cta-inner { display: block; padding: 29px 23px; }
 .premium-cta h2 { font-size: 29px; }
 .premium-cta p { font-size: 11px; }
 .premium-cta .button { margin-top: 24px; min-height: 44px; font-size: 12px; }
 .cta-letter { font-size: 230px; right: -7px; bottom: -33px; }
 .site-footer .brand > span { font-size: 23px; }
 .page-hero-inner { padding: 25px 0 36px; }
 .page-hero h1 { font-size: clamp(35px,7.4vw,48px); line-height: 1.09; letter-spacing: -1.25px; }
 .page-hero .eyebrow { font-size: 9px; }
 .page-hero-image { width: 100%; opacity: .45; }
 .page-hero-image::after { background: linear-gradient(90deg,#08111c 0%,#08111ce0 25%,#08111caa 70%,#08111c66 100%); }
 .page-hero-visual h1,.page-hero-visual p { max-width: 100%; }
 .page-hero p { font-size: 13px; }
 .page-hero-visual .page-hero-inner { padding-bottom: 36px; }
 .pitch-studio { max-width: 440px; }
}
@media (max-width: 359px) {
 .cinema-copy h1 { font-size: 30px; }
 .cinema-eyebrow { letter-spacing: 1.2px; font-size: 7px; }
 .cinema-highlights > div { padding: 0 8px; }
 .cinema-highlights strong { font-size: 12px; }
 .cinema-highlights span { font-size: 7px; }
 .dock-service { gap: 8px; padding: 13px 8px; }
 .dock-service h3 { font-size: 10px; }
 .dock-service p { font-size: 9px; }
 .showcase-intro h2 { font-size: 26px; }
}
@media (prefers-reduced-motion: reduce) {
 *,*::before,*::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
@media print {
 .cinema-art,.cinema-shade,.cinema-caption,.developer-backdrop,.services-dock-wrap,.showcase-arrows,.cta-letter { display: none !important; }
 .cinema-inner { min-height: 0; padding: 20px 0; }
 .cinema-copy { width: 100%; }
 .cinema-copy h1 { font-size: 30pt; }
 .cinema-copy p,.premium-showcase p,.principles-section p { color: #333; }
 .cinema-hero,.developer-band,.principles-section,.premium-showcase,.premium-cta { background: white; color: #111; }
 .premium-track { flex-wrap: wrap; }
 .featured-game { flex-basis: 45%; }
}

.showcase-intro { position: relative; z-index: 4; }


/* All games: coming-soon badges and disabled download controls. */
.release-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 4;
  padding: 7px 10px;
  border: 1px solid rgba(255, 112, 159, .65);
  border-radius: 6px;
  background: #140e1d;
  color: #ffadd0;
  font-size: 10px;
  font-weight: 750;
  line-height: 1.25;
  letter-spacing: .35px;
  pointer-events: none;
}
.featured-tags .upcoming-chip { color: #982756; background: #ffe4ef; }
.game-card[data-status="coming-soon"] .platform-label { color: #ffadd0; }
.button.button-coming-soon:disabled {
  opacity: 1;
  background: #211421;
  border: 1px solid #8a3b63;
  color: #ffd0e2;
  box-shadow: none;
  transform: none;
  cursor: not-allowed;
}
