/* Sunbound Atlas — shared studio shell and homepage. Original game art stays local. */
:root {
  --bg:#f7f3ea; --surface:#fffdf8; --ink:#181a19; --muted:#5e6565;
  --gold:#f1ad31; --gold-soft:#ffdfa0; --green:#6d8d80;
  --atlas-night:#111d35; --atlas-night-deep:#0b1629; --atlas-line:#b89053;
  --atlas-text:#fff6e6; --atlas-caption:#ffe0a3; --atlas-text-shadow:0 1px 2px #06101f;
  --shell:1320px; --line:rgba(24,26,25,.14);
}
html { scroll-padding-top:24px; }
.atlas-page { margin:0; background:var(--bg); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); }
.atlas-page .shell { width:min(var(--shell),calc(100% - 96px)); }
.atlas-page :is(h1,h2,h3) { letter-spacing:-.048em; }
.atlas-page .button { gap:20px; min-height:48px; padding:12px 25px; line-height:1.2; font-size:14px; font-weight:700; border-radius:100px; box-shadow:none; transition:transform .2s,background-color .2s,box-shadow .2s; }
.atlas-page .button:hover { transform:translateY(-2px); }
.atlas-page a:focus-visible { outline:3px solid #976619; outline-offset:6px; }
.atlas-page .skip-link { background:var(--gold-soft); color:var(--atlas-night); }
.atlas-header { position:relative; z-index:10; color:var(--bg); background:var(--atlas-night-deep); }
.atlas-nav { display:flex; align-items:center; justify-content:space-between; gap:34px; min-height:124px; }
.atlas-brand { display:block; flex-shrink:0; width:94px; border-radius:15px; overflow:hidden; background:#faf7f2; }
.atlas-brand img { width:100%; height:auto; }
.atlas-nav-links { display:flex; align-items:center; justify-content:center; gap:clamp(25px,4vw,62px); margin-left:auto; }
.atlas-nav-links a { font-size:14px; font-weight:600; text-decoration:none; padding:12px 0; color:#eee9de; }
.atlas-nav-links a:hover { color:var(--gold-soft); }
.atlas-header .atlas-nav-cta { margin-left:58px; min-height:43px; padding:11px 22px; background:linear-gradient(110deg,#ffdea0,#efb344); color:#17223b; border:1px solid #f8d18b; }
.atlas-header a:focus-visible,.atlas-footer a:focus-visible,.atlas-hero a:focus-visible { outline-color:var(--gold-soft); }
.atlas-button-gold { color:#17223b; background:linear-gradient(115deg,#ffdc98,#f1b644); border:1px solid #f1c77b; }
.atlas-button-gold:hover { background:#ffe0a1; box-shadow:0 6px 24px #efb24525; }
.atlas-button-outline { color:var(--bg); border:1px solid #bd9657; background:#101c3580; }
.atlas-button-outline:hover { background:#24324a; }
.atlas-eyebrow { font-size:11px; font-weight:600; letter-spacing:.17em; line-height:1.65; margin:0 0 21px; text-transform:uppercase; }
.atlas-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:32px; }
.atlas-opening { overflow:hidden; }
@supports (overflow:clip) { .atlas-opening { overflow:clip; } }
.atlas-home .atlas-header { background:var(--atlas-night-deep) url("/assets/atlas/stars.svg") center top/1200px auto; }
.atlas-hero { background:radial-gradient(ellipse at 65% 30%,#1d3350 0,transparent 62%),var(--atlas-night-deep); color:var(--bg); position:relative; isolation:isolate; padding-bottom:170px; }
.atlas-hero::before { content:""; position:absolute; inset:0; background:url("/assets/atlas/stars.svg") center 0/1200px 760px; opacity:.9; pointer-events:none; z-index:-1; }
.atlas-map { height:810px; position:relative; z-index:2; }
.atlas-hero-copy { position:absolute; left:0; top:72px; width:46%; z-index:4; }
.atlas-hero-copy .atlas-eyebrow { color:var(--atlas-text); font-weight:600; text-shadow:var(--atlas-text-shadow); font-size:11px; letter-spacing:.11em; text-transform:none; }
.atlas-hero-copy h1 { font-size:clamp(38px,4.45vw,64px); line-height:1.04; letter-spacing:-.052em; max-width:620px; color:#faf7f0; }
.atlas-routes { position:absolute; width:100%; height:100%; inset:0; overflow:visible; pointer-events:none; }
.world-node { position:absolute; display:block; text-decoration:none; color:#fff7e8; }
.world-window { display:block; width:100%; height:100%; overflow:hidden; position:relative; border:2px solid #e4bc7d; box-shadow:0 0 0 5px #caa56913,0 0 0 7px #cda45d45,0 20px 60px #00000030; transition:box-shadow .3s,transform .3s; }
.world-node:hover .world-window { box-shadow:0 0 0 5px #efd19c30,0 0 0 7px #efd19c90,0 0 40px #f5c06c22; transform:translateY(-4px); }
.world-node:focus-visible { border-radius:24px; }
.world-node-jump { left:48%; top:14px; width:29%; height:350px; transform:rotate(-5deg); }
.world-node-jump .world-window { border-radius:44% 56% 42% 58% / 44% 42% 58% 56%; }
.world-node-jump .world-number { transform:rotate(5deg); }
.world-node-02 { left:32%; top:398px; width:19%; height:222px; }
.world-node-02 .world-window { border-radius:55% 45% 56% 44% / 44% 59% 41% 56%; }
.world-node-03 { left:61%; top:515px; width:20%; height:212px; }
.world-node-03 .world-window { border-radius:39% 61% 44% 56% / 52% 39% 61% 48%; }
.world-node-04 { right:0; top:363px; width:17.5%; height:208px; }
.world-node-04 .world-window { border-radius:57% 43% 37% 63% / 42% 57% 43% 58%; }
.world-number { position:absolute; left:12%; top:-8px; z-index:3; width:42px; height:42px; display:grid; place-items:center; font:12px ui-monospace,monospace; border:2px solid #ffdeb0; border-radius:50%; background:#24313c; color:#fff5df; box-shadow:0 4px 16px #0005; }
.world-node-jump .world-number { background:#715c39; }
.world-caption { display:block; margin-top:15px; text-align:center; font-size:14px; line-height:1.4; font-weight:750; color:#fff9ec; text-shadow:0 2px 3px #06101f,0 0 12px #06101fe6,0 0 22px #f1be7130; }
.world-caption span { display:block; margin-top:5px; font-size:11px; color:#ffe3ad; font-weight:650; letter-spacing:.04em; }
.hero-game-detail { position:absolute; top:102px; right:-2px; width:23%; padding:25px 19px 24px 30px; border:1px solid #c8ab7060; border-radius:0 25px 25px 0; background:linear-gradient(105deg,#172740e8,#142239cc); }
.hero-game-detail h2 { font-size:31px; line-height:1.1; }
.hero-game-detail>p { font-size:13px; margin:9px 0 13px; }
.atlas-tags { display:flex; flex-wrap:wrap; gap:7px; }
.atlas-tags>span { display:inline-block; font-size:10px; font-weight:600; line-height:1.3; padding:5px 10px; color:#fff5e4; border:1px solid #ffebca75; border-radius:100px; }
.hero-game-detail .atlas-tags { gap:6px; }
.hero-game-detail .atlas-tags>span { font-size:9px; padding:3px 7px; }
.hero-game-detail .hero-game-status { font-size:10px; color:var(--atlas-caption); font-weight:600; text-shadow:var(--atlas-text-shadow); }
.hero-game-status>span,.entry-status>span { display:inline-block; width:5px; height:5px; background:#f5c875; border-radius:50%; vertical-align:middle; margin-right:3px; }
.hero-game-detail .button { padding:10px 15px; min-height:38px; font-size:11px; gap:10px; }
.studio-origin { position:absolute; left:3%; top:471px; width:158px; height:158px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-decoration:none; background:#fcf3db; color:#1b2331; border-radius:50%; border:2px solid #f6ca7b; box-shadow:0 0 0 7px #f2c07524,0 0 0 9px #d8b16f85,0 0 45px #eeb95655; }
.studio-origin img { width:104px; height:104px; object-fit:contain; border-radius:50%; }
.studio-origin>.world-caption { position:absolute; top:100%; left:50%; translate:-50% 0; width:max-content; margin-top:24px; color:#fff7e8; }
.studio-orbit { position:absolute; inset:-18px; border:1px solid #efd09850; border-radius:50%; }
.studio-orbit::after,.studio-orbit::before { content:""; position:absolute; width:7px; height:7px; background:#f4c574; border-radius:50%; box-shadow:0 0 15px #ffd28d; top:50%; left:-4px; }
.studio-orbit::after { left:auto; right:-4px; }
.atlas-horizon { position:absolute; z-index:1; bottom:-1px; left:0; width:100%; height:345px; object-fit:cover; object-position:bottom; pointer-events:none; }
.jump-scene { position:absolute; inset:0; overflow:hidden; background:#625781 url("/assets/jumpulsa/sky.png") center/cover; }
.jump-clouds,.jump-front,.jump-industry { position:absolute; inset:0; background-position:center; background-repeat:no-repeat; background-size:cover; }
.jump-clouds { background-image:url("/assets/jumpulsa/clouds.png"); }
.jump-industry { background-image:url("/assets/atlas/industry.png"); background-position:center bottom; opacity:.65; transform:translateY(18%); }
.jump-front { background-image:url("/assets/jumpulsa/foreground.png"); background-position:center 100%; transform:translateY(30%); }
.scene-robot { position:absolute; z-index:3; width:128px; height:128px; left:38%; top:37%; image-rendering:pixelated; filter:drop-shadow(0 8px 7px #19213455); animation:atlas-hover 6s ease-in-out infinite; }
.scene-pipe { position:absolute; z-index:2; width:83px; height:249px; object-fit:contain; max-width:none; filter:drop-shadow(3px 5px 5px #121d3550); }
.scene-pipe-top { right:14%; top:-132px; }
.scene-pipe-bottom { right:14%; bottom:-105px; }
.world-node-jump .scene-robot { width:96px; height:96px; left:24%; top:50%; transform:translateY(-50%); }
.world-node-jump .scene-pipe-top { top:auto; bottom:calc(50% + 62px); }
.world-node-jump .scene-pipe-bottom { top:calc(50% + 62px); bottom:auto; }
.future-teal { --mist-dark:#102f38; --mist-mid:#447b79; --mist-light:#bfdac6; background:#244e56; }
.future-violet { --mist-dark:#202647; --mist-mid:#685ea1; --mist-light:#b9a6e2; background:#3a3b70; }
.future-peach { --mist-dark:#65594c; --mist-mid:#aa927d; --mist-light:#f8d6ad; background:#a5947e; }
.future-mist { position:absolute; inset:-15%; display:block; background:radial-gradient(ellipse at 69% 28%,var(--mist-light) 0,transparent 31%),radial-gradient(ellipse at 27% 73%,var(--mist-light) 0,transparent 25%),linear-gradient(148deg,var(--mist-dark) 10%,var(--mist-mid) 48%,var(--mist-dark) 91%); filter:blur(22px); transform:scale(1.04); }
.future-mist::after { content:""; position:absolute; inset:28% 0 -15%; background:linear-gradient(30deg,var(--mist-dark) 20%,transparent 20%,transparent 48%,var(--mist-dark) 48%,transparent 64%,var(--mist-mid) 64%); opacity:.65; filter:blur(19px); }
.unknown-mark { position:absolute; z-index:1; top:50%; left:50%; translate:-50% -50%; font-family:Georgia,serif; font-size:83px; line-height:1; font-weight:400; color:#fff0cb; text-shadow:0 1px 18px #131d3575; }
.unknown-mark::before { content:""; position:absolute; inset:-18px -30px; border:1px solid #ffe1aa66; border-radius:50%; }
.unknown-mark::after { content:"✧"; position:absolute; bottom:-29px; left:50%; translate:-50% 0; font-size:17px; background:transparent; }
.atlas-worlds { padding-top:30px; padding-bottom:30px; position:relative; isolation:isolate; }
.atlas-section-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:58px; }
.atlas-section-heading .atlas-eyebrow { color:#646563; font-size:10px; margin-bottom:12px; }
.atlas-section-heading h2 { font-size:clamp(42px,5vw,68px); }
.atlas-compass { color:#b08649; font:65px Georgia,serif; }
.world-list { --entry-gap:clamp(14px,1.4vw,20px); position:relative; padding-inline:17px; }
.world-list-routes { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; visibility:hidden; }
.world-list-routes path { stroke:#d9a64e; stroke-width:1.4; stroke-dasharray:2 5; stroke-linecap:round; vector-effect:non-scaling-stroke; filter:drop-shadow(0 0 2px #e9b25335); }
.world-list-routes circle { fill:#e7b04d; stroke:#f8e1ac; stroke-width:.65; vector-effect:non-scaling-stroke; }
.atlas-shape-defs { position:absolute; pointer-events:none; }
.world-entry { --entry-contour:url("#atlas-entry-01"); position:relative; isolation:isolate; display:flex; align-items:center; min-height:280px; margin-bottom:var(--entry-gap); color:#fff8ee; scroll-margin-top:45px; }
/* Only the artwork is clipped: copy, links, focus rings and phone remain intact. */
.entry-surface { position:absolute; inset:0; z-index:-1; overflow:hidden; border-radius:18px; clip-path:var(--entry-contour); box-shadow:0 15px 35px #1721330d; }
.entry-surface::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#0a1d32df,transparent 62%); pointer-events:none; }
.world-entry:nth-of-type(2) { --entry-contour:url("#atlas-entry-02"); margin-bottom:calc(var(--entry-gap) - clamp(48px,5.8vw,75px)); }
.world-entry:nth-of-type(3) { --entry-contour:url("#atlas-entry-03"); margin-bottom:calc(var(--entry-gap) - clamp(33px,3.7vw,47px)); }
.world-entry:nth-of-type(4) { --entry-contour:url("#atlas-entry-04"); }
.world-entry-jump { min-height:398px; margin-bottom:calc(var(--entry-gap) - clamp(47px,4.2vw,60px)); }
.entry-copy { padding:42px 62px; position:relative; z-index:3; width:48%; }
.world-entry-jump .entry-copy { padding-top:40px; padding-bottom:100px; }
.entry-index { display:inline-grid; place-items:center; font:11px ui-monospace,monospace; color:#ffe4af; border:1px solid #ffe3a870; border-radius:50%; width:33px; height:33px; margin-bottom:14px; }
.entry-copy h3 { font-size:clamp(30px,3.3vw,44px); line-height:1.04; }
.entry-pitch { font-size:21px; line-height:1.3; margin:11px 0; letter-spacing:-.02em; }
.entry-description { font-size:13px; line-height:1.6; max-width:285px; color:var(--atlas-text); font-weight:500; text-shadow:var(--atlas-text-shadow); margin:0 0 15px; }
.entry-status { display:block; color:var(--atlas-caption); font-weight:600; text-shadow:var(--atlas-text-shadow); font-size:10px; margin:10px 0 19px; }
.entry-copy .button { font-size:12px; min-height:42px; padding:11px 20px; }
.entry-gameplay { position:absolute; inset:0; --robot-size:clamp(96px,9.5vw,136px); --pipe-width:clamp(88px,8.5vw,120px); --pipe-gap:184px; --pipe-x:66%; --robot-x:53%; }
.world-entry-jump .scene-robot { width:var(--robot-size); height:var(--robot-size); left:var(--robot-x); top:50%; transform:translate(-50%,-50%); }
.world-entry-jump .scene-pipe { width:var(--pipe-width); height:calc(var(--pipe-width) * 3); left:var(--pipe-x); right:auto; transform:translateX(-50%); }
.world-entry-jump .scene-pipe-top { top:auto; bottom:calc(50% + var(--pipe-gap) / 2); }
.world-entry-jump .scene-pipe-bottom { top:calc(50% + var(--pipe-gap) / 2); bottom:auto; }
.atlas-phone { position:absolute; z-index:2; width:184px; right:9%; top:35px; margin:0; transform:rotate(9deg); background:#15243b; border:7px solid #1a273b; border-radius:28px; box-shadow:12px 17px 27px #12213c55,0 0 0 1px #92a1ac; overflow:hidden; }
.atlas-phone img { width:100%; height:auto; object-fit:contain; border-radius:18px; }
.world-entry-future { width:100%; aspect-ratio:3.6; align-items:flex-start; }
.world-entry-future .entry-copy { padding-block:39px; }
.world-entry-future .entry-index { margin-bottom:17px; }
.world-entry-future h3 { font-size:36px; }
.future-status { display:inline-block; margin-top:17px; border:1px solid #ede8d798; border-radius:40px; padding:5px 12px; font-size:11px; font-weight:650; color:#fff6e4; background:#0b16294d; text-shadow:0 1px 4px #081320; }
.unknown-seal { position:absolute; right:24%; top:50%; translate:0 -50%; width:134px; height:134px; border:1px solid #ffe2b36b; border-radius:50%; display:grid; place-items:center; color:#fff0cb; text-shadow:0 3px 20px #15213740; }
.unknown-seal::before { content:""; position:absolute; inset:-10px; border:1px solid #ffe4ba24; border-radius:50%; }
.unknown-seal::after { content:"✧"; position:absolute; top:-16px; left:50%; translate:-50%; font-size:23px; }
.unknown-seal span { font:87px/.9 Georgia,serif; margin-top:-7px; }
.future-waypoint { display:flex; align-items:center; justify-content:center; gap:28px; min-height:100px; border:1px dashed #bfb7a7; border-radius:24px; margin-top:8px; color:#aaa28d; }
.future-waypoint>span:not(.waypoint-line) { font:26px Georgia,serif; }
.waypoint-line { height:1px; width:80px; background:#c6baa44a; }
.atlas-studio { position:relative; isolation:isolate; padding:100px 0 64px; overflow:hidden; background:radial-gradient(ellipse at 86% 48%,#e8d7ad66,transparent 60%),url("/assets/atlas/atlas-margins.svg") center/cover no-repeat; }
/* The same original game clouds softly frame the homepage's light sections. */
.atlas-home :is(.atlas-worlds,.atlas-studio)::before {
  content:""; position:absolute; inset:0 auto 0 50%; width:100vw;
  transform:translateX(-50%); z-index:-1; pointer-events:none;
  background-image:url("/assets/jumpulsa/clouds.png"),url("/assets/jumpulsa/clouds.png");
  background-position:left 90%,right 90%; background-size:auto 160%; background-repeat:no-repeat;
  opacity:.3; image-rendering:pixelated; mask-composite:intersect,add;
  mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent),radial-gradient(ellipse 35% 48% at 0% 50%,#000 10%,transparent),radial-gradient(ellipse 35% 48% at 100% 50%,#000 10%,transparent);
}
.atlas-home .atlas-worlds::before { background-size:auto 140%; }
.studio-layout { display:grid; grid-template-columns:.83fr 1.17fr; align-items:center; gap:0; }
.studio-copy { position:relative; z-index:2; padding:20px 0; }
.studio-copy .atlas-eyebrow { color:#636760; font-size:10px; }
.studio-copy h2 { font-size:clamp(34px,3.65vw,52px); line-height:1.05; }
.studio-copy p:not(.atlas-eyebrow) { max-width:510px; font-size:16px; line-height:1.85; color:#5d625e; }
.gold-rule { display:block; width:42px; height:2px; background:#d4a553; margin:25px 0; }
.studio-illustration { position:relative; margin:0 -100px 0 -55px; mask-image:linear-gradient(transparent,#000 10%,#000 94%,transparent); }
.studio-illustration img { width:100%; height:auto; border-radius:20px; -webkit-mask-image:linear-gradient(90deg,transparent,#000 11%,#000 96%,transparent); mask-image:linear-gradient(90deg,transparent,#000 11%,#000 96%,transparent); }
.atlas-contact { display:flex; position:relative; align-items:center; justify-content:space-between; gap:30px; padding-top:65px; padding-bottom:118px; }
.contact-orbit { position:absolute; left:0; right:0; bottom:77px; height:39px; border-bottom:1px solid #cc9e5a99; border-radius:0 0 50% 45%; rotate:-1.5deg; pointer-events:none; }
.atlas-contact h2 { font-size:clamp(33px,3.8vw,54px); line-height:1.1; }
.atlas-contact p { color:#62675f; font-size:13px; margin:15px 0 0; }
.atlas-contact-actions { display:flex; align-items:center; gap:26px; flex-shrink:0; }
.atlas-link { font-size:12px; font-weight:650; text-decoration:none; border-bottom:1px solid #bf9f67; padding-bottom:3px; }
.contact-sun { position:absolute; left:50%; bottom:0; translate:-50% 50%; padding-inline:9px; font:28px/1 Georgia,serif; color:#c6984d; background:var(--bg); }
.atlas-footer { position:relative; background:linear-gradient(#0b162966,#0b162966),var(--atlas-night-deep) url("/assets/atlas/stars.svg") center 50%/1200px auto; padding:54px 0 30px; color:var(--atlas-text); text-shadow:var(--atlas-text-shadow); }
.atlas-footer::before { content:""; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,#d1aa64,transparent); }
.atlas-footer-top { display:flex; align-items:center; justify-content:space-between; gap:50px; padding-bottom:44px; }
.atlas-footer-brand { display:block; width:92px; flex-shrink:0; overflow:hidden; border-radius:16px; }
.atlas-footer-brand img { width:100%; height:auto; }
.atlas-footer .footer-links { display:flex; gap:17px 27px; flex-wrap:wrap; justify-content:flex-end; }
.atlas-footer a { text-decoration:none; font-size:13px; font-weight:600; color:var(--atlas-text); line-height:1.5; }
.atlas-footer a:hover { color:var(--gold-soft); }
.atlas-footer-bottom { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #e4c28420; padding-top:26px; color:var(--atlas-text); font-size:12px; font-weight:500; line-height:1.6; }
.atlas-footer-bottom a { font-size:12px; color:var(--atlas-text); }
@keyframes atlas-hover { 50% { translate:0 -8px; } }
/* Give the illustrated desktop sections room without stretching long prose. */
@media(min-width:1151px) {
  .atlas-home .atlas-worlds { width:min(1840px,calc(100% - 8vw)); }
  .atlas-home .studio-layout { width:min(1660px,calc(100% - 10vw)); }
  .world-entry-jump { min-height:clamp(450px,28vw,545px); }
  .world-entry-future { min-height:clamp(280px,20vw,390px); aspect-ratio:auto; }
  .world-entry-future .entry-copy { padding-top:60px; }
  .world-entry-jump .entry-copy { padding-block:60px 110px; }
  .entry-description { font-size:15px; max-width:360px; }
  .entry-status { font-size:12px; }
  .entry-copy .atlas-tags>span { font-size:11px; }
  .entry-copy .button { font-size:14px; min-height:48px; }
  .atlas-phone { width:clamp(184px,13vw,220px); top:16px; }
  .entry-gameplay { --robot-size:clamp(120px,9vw,164px); --pipe-width:clamp(110px,8.5vw,150px); --pipe-gap:220px; }
  .studio-layout { grid-template-columns:.85fr 1.15fr; gap:25px; }
  .studio-illustration { margin:0 -80px 0 -20px; }
}
@media(min-width:1600px) {
  .atlas-map { height:845px; }
  .atlas-hero-copy h1 { font-size:64px; }
}
@media(max-width:1150px) {
  .atlas-page .shell { width:calc(100% - 64px); }
  .atlas-header .atlas-nav-cta { margin-left:20px; }
  .atlas-map { height:790px; }
  .atlas-hero-copy { width:46%; top:56px; }
  .atlas-hero-copy h1 { font-size:clamp(38px,4.8vw,54px); }
  .atlas-hero-copy .atlas-eyebrow { font-size:10px; }
  .atlas-hero-copy .button { font-size:12px; padding:12px 17px; gap:10px; }
  .world-node-jump { left:51%; width:36%; height:300px; top:5px; }
  .hero-game-detail { right:0; top:269px; width:42%; padding:18px 22px; border-radius:20px; }
  .hero-game-detail h2 { font-size:25px; }
  .hero-game-detail .atlas-tags { display:none; }
  .hero-game-detail>p { display:inline-block; margin-right:12px; font-size:11px; }
  .hero-game-detail .button { display:flex; width:fit-content; }
  .world-node-02 { left:31%; top:457px; width:23%; height:202px; }
  .world-node-03 { left:58%; top:573px; width:23%; height:187px; }
  .world-node-04 { top:462px; width:20%; height:178px; }
  .studio-origin { left:2%; top:442px; width:137px; height:137px; }
  .studio-origin img { width:90px; height:90px; }
  .atlas-horizon { height:255px; }
  .atlas-hero { padding-bottom:170px; }
  .hero-game-detail .hero-game-status { font-size:9px; }
  .entry-copy { padding:38px 42px; width:48%; }
  .world-entry-jump { min-height:390px; }
  .atlas-phone { width:clamp(112px,13.4vw,154px); top:16px; right:7%; border-width:6px; border-radius:24px; }
  .atlas-contact { flex-wrap:wrap; }
  .studio-illustration { margin-right:-70px; margin-left:-10px; }
  .studio-copy p:not(.atlas-eyebrow) { font-size:13px; }
}
@media(max-width:760px) {
  .atlas-page .shell { width:calc(100% - 40px); }
  .atlas-nav { gap:18px; min-height:108px; flex-wrap:wrap; padding-top:14px; padding-bottom:14px; }
  .atlas-brand { width:68px; border-radius:12px; }
  .atlas-nav-links { gap:22px; margin-left:auto; }
  .atlas-nav-links a { font-size:12px; }
  .atlas-header .atlas-nav-cta { margin-left:0; font-size:11px; padding:10px 14px; min-height:38px; gap:12px; }
  .atlas-map { height:auto; min-height:1065px; }
  .atlas-hero { padding-bottom:150px; }
  .atlas-hero-copy { position:relative; top:auto; left:auto; width:100%; padding:35px 0 24px; }
  .atlas-hero-copy .atlas-eyebrow { font-size:10px; letter-spacing:.08em; margin-bottom:18px; }
  .atlas-hero-copy h1 { font-size:clamp(37px,7.4vw,56px); line-height:1.05; }
  .atlas-actions { margin-top:25px; gap:12px; }
  .atlas-hero-copy .button { font-size:12px; padding:12px 17px; }
  .world-node-jump { width:49%; max-width:300px; height:255px; top:300px; left:7%; }
  .hero-game-detail { top:350px; right:0; width:42%; padding:18px 16px; }
  .hero-game-detail h2 { font-size:25px; }
  .hero-game-detail>p { display:block; line-height:1.4; font-size:12px; }
  .hero-game-detail .button { padding:10px 13px; font-size:10px; white-space:nowrap; gap:9px; }
  .world-node-02 { left:35%; top:649px; width:29%; height:166px; }
  .world-node-03 { left:44%; top:870px; width:29%; height:161px; }
  .world-node-04 { right:0; top:728px; width:28%; height:159px; }
  .world-number { width:33px; height:33px; font-size:10px; top:-4px; }
  .world-caption { font-size:14px; margin-top:18px; }
  .world-caption span { font-size:11px; }
  .studio-origin { top:677px; left:3%; width:105px; height:105px; }
  .studio-origin img { width:70px; height:70px; }
  .studio-origin>.world-caption { margin-top:20px; }
  .studio-orbit { inset:-12px; }
  .atlas-routes { top:580px; height:480px; transform:scaleY(1.1); opacity:.5; }
  .unknown-mark { font-size:60px; }
  .unknown-mark::before { inset:-12px -22px; }
  .unknown-mark::after { bottom:-23px; font-size:14px; }
  .atlas-horizon { height:230px; width:130%; max-width:none; left:-15%; }
  .atlas-home :is(.atlas-worlds,.atlas-studio)::before {
    background-size:auto 140%; background-position:left 90%,right 90%; opacity:.24;
    mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent),radial-gradient(ellipse 65% 48% at 0% 50%,#000 10%,transparent),radial-gradient(ellipse 65% 48% at 100% 50%,#000 10%,transparent);
  }
  .atlas-worlds { padding-top:15px; }
  .atlas-section-heading { margin-bottom:40px; }
  .atlas-section-heading h2 { font-size:43px; }
  .atlas-compass { font-size:49px; }
  .world-list { padding-inline:5px; }
  .world-entry { margin-bottom:8px; min-height:220px; }
  .world-entry-jump { min-height:0; margin-bottom:0; padding-bottom:clamp(280px,48vw,340px); align-items:flex-start; }
  .world-entry:nth-of-type(odd) { --entry-contour:url("#atlas-entry-mobile-odd"); }
  .world-entry:nth-of-type(even) { --entry-contour:url("#atlas-entry-mobile-even"); }
  .world-entry:nth-of-type(2),.world-entry:nth-of-type(3) { margin-bottom:8px; }
  .world-entry-future { aspect-ratio:auto; }
  .entry-surface { border-radius:16px; }
  .entry-copy { width:66%; padding:27px 23px; }
  .entry-copy h3 { font-size:36px; }
  .entry-pitch { font-size:17px; }
  .entry-description { font-size:12px; max-width:230px; }
  .entry-copy .atlas-tags { max-width:160px; gap:5px; }
  .atlas-tags>span { font-size:9px; padding:4px 8px; }
  .entry-status { font-size:9px; }
  .entry-copy .button { font-size:11px; padding:11px 15px; gap:12px; }
  .world-entry-jump .entry-copy { width:100%; padding:27px 23px; }
  .world-entry-jump .entry-surface::after { background:linear-gradient(180deg,#0a1d3270,transparent 75%); }
  .world-entry-jump .entry-description { max-width:360px; }
  .world-entry-jump .atlas-tags { max-width:none; }
  .entry-gameplay { top:auto; height:280px; width:60%; overflow:hidden; --robot-size:clamp(80px,14vw,100px); --pipe-width:clamp(58px,11vw,82px); --pipe-gap:136px; --pipe-x:65%; --robot-x:30%; mask-image:linear-gradient(transparent,#000 12%); }
  .atlas-phone { width:clamp(94px,21vw,140px); right:8%; top:auto; bottom:30px; border-width:4px; border-radius:17px; }
  .atlas-phone img { border-radius:11px; }
  .world-entry-future h3 { font-size:29px; }
  .world-entry-future .entry-copy { padding:30px 23px; width:60%; }
  .entry-index { width:29px; height:29px; font-size:10px; }
  .unknown-seal { width:84px; height:84px; right:10%; }
  .unknown-seal span { font-size:59px; }
  .unknown-seal::before { inset:-7px; }
  .unknown-seal::after { font-size:18px; top:-13px; }
  .future-status { font-size:10px; margin-top:13px; }
  .future-waypoint { min-height:75px; border-radius:20px; gap:15px; }
  .waypoint-line { width:47px; }
  .atlas-studio { padding:65px 0 15px; background:radial-gradient(ellipse at 90% 60%,#e8d7ad44,transparent 70%); }
  .studio-layout { grid-template-columns:1fr; }
  .studio-copy { padding:0; }
  .studio-copy h2 { font-size:43px; }
  .studio-title-break { display:none; }
  .studio-copy p:not(.atlas-eyebrow) { font-size:14px; max-width:100%; }
  .studio-illustration { margin:20px -25px 0; }
  .studio-illustration img { border-radius:0; mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); }
  .atlas-contact { padding-top:55px; padding-bottom:87px; gap:25px; }
  .atlas-contact h2 { font-size:38px; }
  .atlas-contact p { font-size:12px; max-width:310px; }
  .atlas-contact-actions { gap:25px; }
  .contact-orbit { bottom:39px; }
  .contact-sun { font-size:24px; }
  .atlas-footer { padding:35px 0 27px; }
  .atlas-footer-top { gap:28px; align-items:flex-start; padding-bottom:28px; }
  .atlas-footer-brand { width:76px; border-radius:13px; }
  .atlas-footer .footer-links { display:grid; grid-template-columns:1fr 1fr; gap:12px 24px; }
  .atlas-footer a { font-size:12px; }
  .atlas-footer-bottom { flex-direction:column; gap:10px; }
}
@media(max-width:480px) {
  .atlas-nav { min-height:121px; padding-block:10px; gap:0 14px; }
  .atlas-brand { width:65px; }
  .atlas-nav-links { gap:21px; margin:0; width:calc(100% - 86px); justify-content:flex-end; align-self:flex-start; padding-top:4px; }
  .atlas-nav-links a { font-size:12px; min-width:44px; text-align:center; }
  .atlas-header .atlas-nav-cta { position:absolute; right:20px; top:60px; min-height:44px; padding:10px 15px; font-size:12px; }
  .atlas-hero-copy { padding-top:22px; }
  .atlas-hero-copy h1 { font-size:clamp(34px,8.9vw,43px); }
  .atlas-map { min-height:981px; }
  .world-node-jump { top:265px; height:217px; width:59%; left:0; }
  .world-node-jump .scene-robot { width:56px; height:56px; left:20%; }
  .world-node-jump .scene-pipe { width:57px; height:171px; right:13%; }
  .world-node-jump .scene-pipe-top { bottom:calc(50% + 50px); }
  .world-node-jump .scene-pipe-bottom { top:calc(50% + 50px); }
  .hero-game-detail { top:322px; width:48%; padding:14px 12px; }
  .hero-game-detail h2 { font-size:23px; }
  .hero-game-detail>p { font-size:12px; }
  .hero-game-detail .hero-game-status { font-size:11px; line-height:1.5; }
  .hero-game-detail .button { padding:10px 9px; font-size:11px; min-height:44px; gap:5px; }
  .world-node-02 { left:37%; top:565px; width:35%; height:147px; }
  .world-node-03 { left:36%; top:800px; width:38%; height:145px; }
  .world-node-04 { right:0; top:670px; width:34%; height:140px; }
  .studio-origin { top:570px; left:3%; width:86px; height:86px; }
  .studio-origin img { width:55px; height:55px; }
  .unknown-mark { font-size:54px; }
  .unknown-mark::before { inset:-10px -18px; }
  .atlas-hero { padding-bottom:142px; }
  .atlas-horizon { height:190px; width:155%; left:-27%; }
  .atlas-routes { top:515px; height:450px; }
  .atlas-actions { gap:9px; }
  .atlas-hero-copy .button { font-size:11px; padding:11px 14px; gap:10px; min-height:43px; }
  .entry-copy { padding:25px 18px; width:67%; }
  .entry-description { max-width:170px; }
  .entry-copy h3 { font-size:33px; }
  .entry-copy .button { font-size:10px; padding:10px 12px; gap:8px; }
  .entry-pitch { font-size:16px; }
  .world-entry-future { min-height:199px; }
  .world-entry-future .entry-copy { padding:26px 18px; }
  .world-entry-future h3 { font-size:26px; }
  .unknown-seal { right:9%; width:70px; height:70px; }
  .unknown-seal span { font-size:48px; }
  .studio-copy h2 { font-size:39px; }
  .atlas-contact h2 { font-size:34px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .atlas-page *, .atlas-page *::before,.atlas-page *::after { animation:none!important; transition:none!important; }
}
