/* ANTARI game collection */
html { scroll-behavior: smooth; }
#Terralien, #Explore, #Mission, #Contact { scroll-margin-top: 96px; }
.game-actions { display:flex; flex-wrap:wrap; gap:12px; }
a.game-button { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:50px; padding:13px 22px; background:#d1f584; border:1px solid #d1f584; border-radius:8px; color:#152516; font-size:14px; font-weight:700; text-decoration:none; transition:transform .2s,background .2s; }
a.game-button:hover { background:#e0ffaa; transform:translateY(-2px); }
a.game-button-secondary { background:transparent; color:#fff; border-color:#819198; }
a.game-button-secondary:hover { background:#ffffff12; color:#fff; }
a:focus-visible, button:focus-visible { outline:3px solid #d1f584; outline-offset:5px; }
.header { height:70vh; min-height:500px; max-height:760px; }
.header .header-content { width:calc(100% - 40px); max-width:820px; }
.header .header-content .header-title { font-size:clamp(64px,10vw,120px); letter-spacing:.1em; margin-left:.1em; }
.header .header-content .header-subtitle { font-size:18px; line-height:1.7; max-width:580px; margin:0 auto 26px; }
.hero-actions { justify-content:center; }
a.studio-link { display:inline-block; margin-top:25px; color:#ddd; font-size:13px; }
.featured-game { display:grid; grid-template-columns:1.1fr 1fr; position:relative; overflow:hidden; border:1px solid #526858; border-radius:24px; background:radial-gradient(ellipse at 85% 40%,#254c48 0, #172d31 45%,#17262b 75%); padding:56px; color:#f6f9f2; text-align:left; }
.game-eyebrow { text-transform:uppercase; letter-spacing:.16em; font-size:11px; font-weight:700; color:#c8ea9c; margin:0 0 24px; }
.featured-identity { display:flex; gap:16px; align-items:center; margin-bottom:25px; }
.featured-identity img { border-radius:17px; }
.featured-identity span { font-size:10px; letter-spacing:.12em; line-height:1.9; color:#b9ceca; }
.featured-identity strong { font-size:18px; letter-spacing:0; color:white; }
.featured-game h2 { font-size:clamp(38px,4.5vw,62px); line-height:1.06; font-weight:700; letter-spacing:-.045em; margin:0 0 22px; color:#fff; }
.featured-copy > p:not(.game-eyebrow) { max-width:440px; color:#d3dfdc; font-size:16px; line-height:1.8; }
.game-topics { display:flex; flex-wrap:wrap; list-style:none; gap:8px; padding:0; margin:22px 0 30px; }
.game-topics li { border:1px solid #607570; border-radius:30px; padding:6px 10px; font-size:11px; color:#e2eae4; }
.featured-art { position:relative; display:block; min-height:400px; align-self:stretch; color:inherit; }
.terralien-globe { position:absolute; width:115%; height:auto; left:-4%; top:4%; filter:drop-shadow(0 20px 35px #0005); }
.terralien-blorg { position:absolute; width:55%; height:auto; right:-6%; bottom:3%; filter:drop-shadow(0 14px 15px #0005); }
.orbit { position:absolute; border:1px solid #bddf9240; width:110%; height:80%; border-radius:50%; top:7%; left:-5%; transform:rotate(-25deg); }
.orbit-two { width:90%; height:110%; top:-5%; left:10%; transform:rotate(35deg); }
.mission-note { position:absolute; left:0; bottom:0; font-size:10px; letter-spacing:.16em; color:#d1f584; }
.mission-note span { margin:0 12px; }
.games-section { padding:70px 0 25px; text-align:left; }
.catalog-heading { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:32px; }
.catalog-heading .game-eyebrow { margin-bottom:14px; }
.catalog-heading h2 { font-size:clamp(32px,4vw,44px); font-weight:700; color:#fff; letter-spacing:-.035em; margin-bottom:12px; }
.catalog-heading p:not(.game-eyebrow) { color:#bbc4c8; margin:0; }
a.catalog-link { color:#d1f584; white-space:nowrap; font-size:13px; margin-bottom:4px; }
.games-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.game-tile { display:flex; flex-direction:column; align-items:flex-start; padding:28px; border:1px solid #495157; border-radius:16px; background:#292f34; }
.game-icon-link { display:block; margin-bottom:24px; }
.game-icon-link img { border-radius:24px; width:100px; height:100px; }
.game-genre { text-transform:uppercase; color:#c8d2d8; font-size:10px; letter-spacing:.12em; margin:0 0 10px; }
.game-tile h3 { color:#fff; font-size:20px; font-weight:700; line-height:1.35; margin:0 0 12px; }
.game-description { color:#c5cdd2; font-size:14px; line-height:1.75; margin:0 0 24px; }
a.game-store-link { display:inline-flex; align-items:center; margin-top:auto; margin-left:-13px; }
a.game-store-link img { display:block; width:202px; height:78px; object-fit:contain; }
body.light-theme .catalog-heading h2 { color:#202a2d; }
body.light-theme .catalog-heading p:not(.game-eyebrow) { color:#4e5b60; }
body.light-theme .games-section .game-eyebrow, body.light-theme a.catalog-link { color:#416422; }
@media (max-width:991px) { .featured-game { padding:34px; } .featured-art { min-height:370px; } .games-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .catalog-heading { display:block; } a.catalog-link { display:inline-block; margin-top:18px; } }
@media (max-width:767px) { .featured-game { grid-template-columns:1fr; width:calc(100% - 30px); padding:28px; } .featured-art { min-height:350px; max-width:380px; width:100%; margin:20px auto 0; } .terralien-globe { width:100%; left:0; } .terralien-blorg { width:48%; right:0; } .featured-game h2 { font-size:44px; } .page-navbar .nav-navbar .nav-link { font-size:11px; padding:15px 5px; } .page-navbar .nav-navbar { padding-left:8px; padding-right:8px; } .games-section { padding:45px 15px 0; } .header .header-content .header-subtitle { font-size:16px; } }
@media (max-width:479px) { .games-grid { grid-template-columns:1fr; } .game-tile { padding:24px; } .game-icon-link img { width:88px; height:88px; } .featured-game .game-actions { flex-direction:column; } .featured-art { min-height:290px; } .hero-actions .game-button { padding:12px 15px; font-size:12px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } a.game-button { transition:none; } }

/* Official store artwork, with original proportions and clear space. */
.store-badges { display:flex; flex-wrap:wrap; align-items:flex-start; gap:4px; margin:20px -13px -13px; }
.store-badge-item { display:flex; flex-direction:column; align-items:center; }
.store-badge { display:inline-flex; flex-shrink:0; align-items:center; justify-content:center; }
.app-store-badge { padding:13px; }
.app-store-badge img { display:block; width:auto; height:52px; }
.google-play-badge img { display:block; width:202px; height:78px; object-fit:contain; }
.store-availability { font-size:11px; color:#d3dfdc; padding:0 13px 13px; }

.hero-category { display:block; font-size:16px; letter-spacing:.06em; margin:0 0 22px; font-weight:500; }
.feature-subtitle { font-size:.68em; letter-spacing:-.025em; }
.geography-resource { display:grid; grid-template-columns:1.5fr 1fr; align-items:center; gap:40px; text-align:left; margin:60px 0 20px; padding:40px; background:#172d31; border:1px solid #526858; border-radius:20px; color:#d3dfdc; }
.geography-resource h2 { color:#fff; font-size:34px; line-height:1.2; font-weight:700; }
.geography-resource p { line-height:1.8; }
.geography-resource .game-eyebrow { margin-bottom:16px; }
.geography-resource img { width:100%; height:auto; max-width:320px; }
@media(max-width:767px) { .geography-resource { grid-template-columns:1fr; margin:40px 15px 0; padding:28px; gap:20px; } .geography-resource img { max-width:220px; margin:auto; } .hero-category { font-size:13px; } }

.overlay-img img { height:auto; }


/* Light surfaces need their own palette: the legacy theme changes paragraph colors. */
body.light-theme { background-color:#f5f7f4 !important; color:#24332c; }
body.light-theme .featured-game { background:radial-gradient(ellipse at 85% 40%,#dceecb 0,#edf5e7 48%,#f5f8f1 85%); border-color:#c2d3bc; color:#243b2e; }
body.light-theme .game-eyebrow { color:#436633; }
body.light-theme .featured-identity span { color:#4e6256; }
body.light-theme .featured-identity strong,
body.light-theme .featured-game h2 { color:#1b3024; }
body.light-theme .featured-copy > p:not(.game-eyebrow) { color:#475a50; }
body.light-theme .game-topics li { color:#344f42; border-color:#b1c4af; background:#ffffff70; }
body.light-theme .orbit { border-color:#315a392e; }
body.light-theme .mission-note { color:#405e2a; }
body.light-theme .game-tile { background:#fff; border-color:#d7dfdc; box-shadow:0 5px 18px #243b2e06; }
body.light-theme .game-tile h3 { color:#1b3026; }
body.light-theme .game-genre { color:#526b5f; }
body.light-theme .game-description { color:#42534c; }
body.light-theme .geography-resource { background:#eaf2e5; border-color:#c3d4ba; color:#42534c; }
body.light-theme .geography-resource h2 { color:#1b3024; }
body.light-theme .geography-resource p:not(.game-eyebrow) { color:#42534c; }
body.light-theme a.game-button-secondary { color:#243a2d; border-color:#517349; background:#ffffff70; }
body.light-theme a.game-button-secondary:hover { background:#e4efd9; color:#1b3024; }
body.light-theme a.studio-link { color:#34513e; }
body.light-theme a:focus-visible,
body.light-theme button:focus-visible { outline-color:#386536; }
body.light-theme .contact-section .overlay { background:linear-gradient(#f5f7f4f5,#f5f7f4e6); }
body.light-theme .contact-section .form-control { background:#ffffffed; border-color:#b7c6bc; color:#24332c; }
body.light-theme .contact-section .form-control:focus { border-color:#386536; box-shadow:0 0 0 3px #38653626; }
body.light-theme .contact-section button.form-control { background:#2c583b; border-color:#2c583b; color:#fff; }
body.light-theme .contact-section button.form-control:hover { background:#20442d; }

/* Center each footer row by its content rather than two unequal half-width columns. */
.contact-section .footer { flex-direction:column; justify-content:center; gap:12px; margin-top:56px; padding:28px 0; border-top:1px solid #ffffff26; }
.contact-section .footer .infos { width:auto; max-width:100%; text-align:center; margin:0; padding:0; }
.contact-section .footer .links { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 24px; width:auto; max-width:100%; text-align:center; margin:0; padding:0; }
.contact-section .footer .links a { display:inline-flex; align-items:center; min-height:44px; margin:0; }
body.light-theme .contact-section .footer { border-top-color:#cbd7ce; }
