:root {
  --bg: #080a18;
  --bg-soft: #0d1024;
  --surface: rgba(21, 24, 53, .72);
  --surface-strong: #171a39;
  --line: rgba(190, 196, 255, .17);
  --line-bright: rgba(190, 196, 255, .34);
  --text: #f3f4ff;
  --muted: #9da1c4;
  --soft: #c8ccef;
  --violet: #9b8cff;
  --pink: #ff83c8;
  --cyan: #8ce8ff;
  --mono: ui-monospace, SFMono-Regular, Consolas, 'Liberation Mono', monospace;
  --sans: 'Pretendard', 'Noto Sans KR', 'Malgun Gothic', 'Apple SD Gothic Neo', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --shell: min(1240px, calc(100% - 80px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--text); background: var(--bg); font-family: var(--sans); overflow-x: hidden; word-break: keep-all; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }

.site-noise { position: fixed; inset: 0; z-index: 10; pointer-events: none; opacity: .04; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E"); }
.cursor-glow { position: fixed; width: 420px; height: 420px; border-radius: 50%; pointer-events: none; z-index: -1; background: radial-gradient(circle, rgba(116, 100, 255, .11), transparent 68%); transform: translate(-50%, -50%); transition: left .25s ease, top .25s ease; }
.starfield { position: fixed; inset: 0; z-index: -2; overflow: hidden; background: radial-gradient(ellipse at 72% 8%, rgba(60, 44, 137, .23), transparent 37%), radial-gradient(ellipse at 15% 78%, rgba(30, 65, 132, .16), transparent 33%), var(--bg); }
.star { position: absolute; display: block; border-radius: 50%; background: #fff; animation: blink var(--blink, 4s) ease-in-out infinite alternate; }
@keyframes blink { from { opacity: .2; transform: scale(.75); } to { opacity: var(--opacity, .9); transform: scale(1); } }

.section-shell { width: var(--shell); margin: 0 auto; }
.section-pad { padding-top: 150px; padding-bottom: 150px; }
.site-header { position: absolute; top: 0; left: 0; right: 0; z-index: 20; display: flex; align-items: center; justify-content: space-between; width: var(--shell); height: 100px; margin: auto; }
.brand, .footer-brand { display: inline-flex; gap: 12px; align-items: center; font-size: 15px; font-weight: 800; letter-spacing: .16em; }
.brand-mark { position: relative; display: inline-block; width: 23px; height: 23px; transform: rotate(-38deg); }
.brand-mark span { position: absolute; width: 9px; height: 18px; border: 2px solid var(--text); border-radius: 50% 50% 48% 48%; }
.brand-mark span:nth-child(1) { left: 1px; top: 2px; transform: rotate(45deg); }
.brand-mark span:nth-child(2) { right: 1px; top: 2px; transform: rotate(-45deg); }
.brand-mark span:nth-child(3) { left: 8px; bottom: 1px; width: 7px; height: 10px; border-color: var(--pink); }
.desktop-nav { display: flex; gap: 42px; margin-left: 120px; }
.desktop-nav a, .header-cta { font: 500 10px/1 var(--mono); letter-spacing: .14em; color: var(--muted); transition: color .25s ease; }
.desktop-nav a span { margin-left: 7px; color: var(--violet); }
.desktop-nav a:hover, .header-cta:hover { color: var(--text); }
.header-cta i { color: var(--pink); font-style: normal; margin-left: 8px; font-size: 16px; }
.menu-toggle { display: none; width: 42px; height: 42px; padding: 10px; border: 1px solid var(--line); border-radius: 50%; background: transparent; cursor: pointer; }
.menu-toggle span { display: block; height: 1px; margin: 5px; background: var(--text); transition: transform .25s ease; }

.hero { position: relative; min-height: 900px; display: grid; grid-template-columns: 1fr 1fr; align-items: center; padding-top: 110px; }
.hero-copy { position: relative; z-index: 2; padding-bottom: 80px; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 30px; color: var(--soft); font: 500 10px/1 var(--mono); letter-spacing: .16em; }
.eyebrow-dot, .data-status i { width: 6px; height: 6px; background: var(--pink); border-radius: 50%; box-shadow: 0 0 14px var(--pink); }
.hero h1 { max-width: 650px; margin: 0; font-size: clamp(44px, 5.4vw, 78px); line-height: 1.1; letter-spacing: -.065em; font-weight: 700; }
h1 em, h2 span { color: var(--pink); font-style: normal; }
.hero-description { margin: 34px 0 40px; color: var(--muted); font-size: 14px; line-height: 1.9; }
.hero-actions { display: flex; gap: 30px; align-items: center; }
.button { display: inline-flex; align-items: center; justify-content: space-between; min-width: 176px; padding: 17px 18px 17px 21px; border: 1px solid transparent; border-radius: 100px; font-size: 12px; font-weight: 700; transition: transform .25s ease, box-shadow .25s ease, background .25s ease; }
.button span { margin-left: 20px; font-size: 18px; font-weight: 400; }
.button:hover { transform: translateY(-3px); }
.button-primary { color: #101020; background: var(--pink); box-shadow: 0 0 35px rgba(255, 131, 200, .18); }
.button-primary:hover { box-shadow: 0 10px 40px rgba(255, 131, 200, .32); }
.text-link { font-size: 12px; color: var(--soft); }
.text-link span { margin-left: 9px; color: var(--violet); font-size: 16px; transition: margin .25s ease; }
.text-link:hover span { margin-left: 15px; }

.hero-visual { position: relative; display: flex; height: 650px; align-items: center; justify-content: center; }
.hero-image { position: absolute; inset: 2% -18% 3% -10%; overflow: hidden; border-radius: 50%; opacity: .88; mask-image: radial-gradient(ellipse at center, #000 35%, rgba(0,0,0,.86) 59%, transparent 78%); -webkit-mask-image: radial-gradient(ellipse at center, #000 35%, rgba(0,0,0,.86) 59%, transparent 78%); }
.hero-image::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(8, 10, 24, .82), transparent 46%, rgba(8, 10, 24, .12)), linear-gradient(0deg, rgba(8, 10, 24, .5), transparent 35%); content: ''; }
.hero-image img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; }
.planet-system { position: relative; width: min(45vw, 560px); height: min(45vw, 560px); min-width: 400px; min-height: 400px; }
.planet-glow { position: absolute; inset: 19%; border-radius: 50%; background: radial-gradient(circle at 35% 28%, rgba(255, 176, 234, .64), rgba(125, 73, 202, .26) 34%, transparent 70%); filter: blur(18px); animation: breathe 6s ease-in-out infinite alternate; display: none; }
.planet { position: absolute; inset: 25%; overflow: hidden; border-radius: 50%; background: radial-gradient(circle at 34% 28%, #f9b4eb 0, #d284dd 11%, #9650c5 32%, #42258b 66%, #100e2c 100%); box-shadow: -25px -19px 52px rgba(255, 160, 226, .35), 20px 30px 55px rgba(7, 6, 28, .8), inset -28px -18px 50px #0a0a24; animation: float 8s ease-in-out infinite; display: none; }
.planet-surface { position: absolute; inset: -10%; opacity: .4; background: repeating-radial-gradient(ellipse at 30% 30%, transparent 0 13px, rgba(255, 228, 247, .3) 14px 18px, transparent 19px 33px); transform: rotate(-22deg); filter: blur(2px); }
.planet-shadow { position: absolute; inset: 0; background: linear-gradient(135deg, transparent 35%, rgba(7, 5, 31, .1) 45%, rgba(4, 4, 20, .78) 82%); }
.orbit { position: absolute; border: 1px solid rgba(195, 181, 255, .3); border-radius: 50%; transform: rotate(-27deg); }
.orbit-one { inset: 7%; transform: rotate(29deg); }
.orbit-two { inset: -4% 20%; transform: rotate(-48deg); border-color: rgba(138, 232, 255, .25); }
.orbit-three { inset: 19% -5%; transform: rotate(63deg); border-color: rgba(255, 131, 200, .28); }
.satellite { position: absolute; width: 9px; height: 9px; border: 2px solid var(--cyan); border-radius: 50%; box-shadow: 0 0 18px var(--cyan); background: #c4f6ff; }
.satellite-one { top: 11%; left: 67%; }
.satellite-two { bottom: 10%; left: 22%; width: 5px; height: 5px; border-color: var(--pink); background: var(--pink); box-shadow: 0 0 15px var(--pink); }
.visual-label { position: absolute; color: var(--muted); font: 9px var(--mono); letter-spacing: .1em; }
.visual-label-top { top: 80px; right: 8px; }
.visual-label-top span { display: inline-block; width: 5px; height: 5px; margin-right: 6px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 12px var(--cyan); }
.visual-label-bottom { right: 4px; bottom: 77px; font-size: 8px; opacity: .65; }
@keyframes float { to { transform: translateY(-12px) rotate(2deg); } }
@keyframes breathe { to { transform: scale(1.1); opacity: .68; } }
.hero-bottom { position: absolute; bottom: 46px; left: 0; right: 0; display: flex; align-items: flex-end; justify-content: space-between; }
.scroll-note { display: flex; align-items: center; gap: 13px; color: var(--muted); font: 9px var(--mono); letter-spacing: .1em; }
.scroll-line { position: relative; width: 1px; height: 50px; background: var(--line-bright); }
.scroll-line::after { position: absolute; top: 0; left: 0; width: 1px; height: 17px; background: var(--pink); content: ''; animation: scroll-line 2s ease-in-out infinite; }
@keyframes scroll-line { 50% { transform: translateY(33px); } }
.hero-stats { display: flex; gap: 48px; }
.hero-stats div { display: flex; flex-direction: column; gap: 7px; }
.hero-stats strong { color: var(--soft); font: 22px var(--mono); font-weight: 400; }
.hero-stats span { color: var(--muted); font: 8px var(--mono); letter-spacing: .12em; }

.section-heading { display: flex; justify-content: space-between; gap: 70px; }
.eyebrow-number { color: var(--pink); }
h2 { margin: 0; color: var(--text); font-size: clamp(38px, 5vw, 67px); line-height: 1.24; letter-spacing: -.045em; font-weight: 700; word-break: keep-all; }
.intro { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; border-top: 1px solid var(--line); }
.intro .section-heading h2 { font-size: clamp(38px, 4vw, 54px); line-height: 1.3; }
.intro h2 .keep-line { display: inline-flex; gap: .16em; color: var(--text); white-space: nowrap; }
.intro h2 .keep-line b { color: var(--pink); font-weight: 700; }
.intro-copy { position: relative; padding-top: 75px; }
.large-copy { max-width: 440px; margin: 0; font-size: 23px; line-height: 1.65; letter-spacing: -.02em; }
.muted-copy { max-width: 410px; margin: 28px 0 0; color: var(--muted); font-size: 13px; line-height: 2; letter-spacing: -.01em; }
.circle-link { display: flex; align-items: center; justify-content: space-between; width: 110px; height: 110px; margin: 64px 0 0 auto; padding: 18px; border: 1px solid var(--line-bright); border-radius: 50%; color: var(--soft); font: 9px/1.5 var(--mono); transition: background .25s ease, transform .25s ease; }
.circle-link b { color: var(--pink); font-size: 19px; font-weight: 400; align-self: flex-start; }
.circle-link:hover { background: rgba(255, 131, 200, .09); transform: rotate(10deg); }

.mission-strip { display: grid; grid-template-columns: 1.1fr .9fr; gap: 18px; padding-top: 0; }
.mission-card { position: relative; min-height: 470px; overflow: hidden; padding: 24px; border: 1px solid var(--line); background: linear-gradient(140deg, rgba(29, 31, 73, .85), rgba(12, 14, 35, .85)); }
.card-topline { position: relative; z-index: 3; display: flex; justify-content: space-between; color: var(--muted); font: 9px var(--mono); letter-spacing: .1em; }
.card-topline span:last-child { color: var(--pink); }
.mission-card-art { position: absolute; inset: 0; }
.art-planet { background-image: linear-gradient(0deg, rgba(10, 10, 30, .78), rgba(17, 16, 50, .1) 65%), url('../images/origin-mission.webp'); background-size: cover; background-position: center; }
.art-ring { display: none; position: absolute; top: 17%; left: 31%; width: 56%; height: 56%; border: 1px solid rgba(151, 136, 255, .5); border-radius: 50%; transform: rotate(-28deg) skewX(-14deg); box-shadow: 0 0 45px rgba(124, 108, 255, .12); }
.art-ring::before { position: absolute; inset: 11% -15%; border: 1px solid rgba(255, 131, 200, .23); border-radius: 50%; content: ''; }
.art-orb { display: none; position: absolute; top: 26%; left: 42%; width: 34%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 31% 25%, #ffc0ee, #b564de 25%, #362273 71%, #090817); box-shadow: 0 0 50px rgba(182, 95, 225, .42); }
.art-spark { position: absolute; width: 4px; height: 4px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 12px var(--cyan); }
.spark-a { top: 25%; left: 77%; }.spark-b { top: 72%; left: 29%; background: var(--pink); box-shadow: 0 0 12px var(--pink); }
.card-footer { position: absolute; bottom: 25px; left: 24px; right: 24px; z-index: 3; display: flex; align-items: flex-end; justify-content: space-between; border-top: 1px solid var(--line); padding-top: 15px; }
.card-footer span { color: var(--muted); font: 9px var(--mono); }.card-footer strong { font-size: 13px; font-weight: 500; }
.mission-card-secondary { display: flex; flex-direction: column; justify-content: space-between; background-image: linear-gradient(0deg, rgba(11, 12, 32, .9), rgba(18, 18, 51, .25) 70%), url('../images/signal-transmission.webp'); background-color: #151632; background-size: cover; background-position: center; }
.mission-card-secondary::after { position: absolute; right: -20%; bottom: -25%; width: 370px; height: 370px; border-radius: 50%; background: radial-gradient(circle, rgba(255, 131, 200, .16), transparent 66%); content: ''; }
.waveform { display: none; position: absolute; top: 50%; right: 24px; left: 24px; height: 90px; align-items: center; gap: 4px; transform: translateY(-50%); }
.waveform i { display: block; width: 3px; min-height: 5px; height: calc(15px + var(--height, 30px)); background: var(--violet); opacity: .55; border-radius: 4px; animation: wave 1.8s ease-in-out infinite alternate; }
.waveform i:nth-child(2n) { --height: 56px; animation-delay: -.4s; }.waveform i:nth-child(3n) { --height: 20px; animation-delay: -.8s; }.waveform i:nth-child(5n) { --height: 70px; animation-delay: -.2s; }.waveform i:nth-child(7n) { --height: 10px; }
@keyframes wave { to { transform: scaleY(.45); opacity: .3; } }
.mission-card-secondary p { position: relative; z-index: 2; margin: auto 0 35px; font-size: 23px; line-height: 1.4; letter-spacing: -.05em; }.mission-card-secondary p b { color: var(--pink); font-weight: 500; }.card-caption { position: relative; z-index: 2; color: var(--muted); font: 9px var(--mono); letter-spacing: .08em; }

.split-heading { align-items: flex-end; }.heading-side-copy { margin: 0 0 4px; color: var(--muted); font-size: 13px; line-height: 1.8; }
.explore-grid { display: grid; grid-template-columns: 1.08fr .96fr .96fr; gap: 18px; margin-top: 74px; }
.explore-card { position: relative; min-height: 550px; padding: 24px; overflow: hidden; border: 1px solid var(--line); background: var(--surface); transition: transform .35s ease, border-color .35s ease; }.explore-card:hover { transform: translateY(-8px); border-color: var(--line-bright); }
.explore-card-tall { background: linear-gradient(150deg, #25235a, #11142c 70%); }.explore-card-mid { background: linear-gradient(150deg, #142c54, #0d172d 70%); }.explore-card-small { background: linear-gradient(150deg, #3d1d5d, #17152d 70%); }
.explore-number { position: relative; z-index: 3; color: var(--soft); font: 10px var(--mono); }.explore-number span { color: var(--muted); }
.explore-art { position: absolute; inset: 0; }.art-ship { background-image: linear-gradient(0deg, rgba(10, 14, 35, .82), rgba(20, 20, 60, .08) 60%), url('../images/exploration-ship.webp'); background-size: cover; background-position: center; }.ship-body { position: absolute; top: 30%; left: 33%; width: 36%; height: 13%; border-radius: 50% 50% 45% 45%; background: linear-gradient(100deg, #d9daff, #847be6 58%, #3a318c); transform: rotate(-21deg); box-shadow: 0 0 30px rgba(156, 146, 255, .5); opacity: .15; }.ship-body::after { position: absolute; top: 33%; left: 21%; width: 57%; height: 29%; border-radius: 50%; background: #1d2354; box-shadow: inset 0 0 0 2px rgba(207, 226, 255, .35); content: ''; }.ship-light { position: absolute; top: 38%; left: 51%; width: 5px; height: 5px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 20px 5px var(--cyan); }.ship-trail { position: absolute; top: 37%; left: 22%; width: 22%; height: 3px; background: linear-gradient(90deg, transparent, var(--pink)); transform: rotate(-21deg); filter: blur(1px); opacity: .3; }.ship-star { position: absolute; width: 4px; height: 4px; border-radius: 50%; background: #fff; box-shadow: 0 0 10px #fff; }.star-one { top: 23%; left: 72%; }.star-two { top: 60%; left: 21%; background: var(--cyan); box-shadow: 0 0 12px var(--cyan); }
.art-moon { background-image: linear-gradient(0deg, rgba(8, 16, 39, .85), rgba(13, 24, 57, .08) 65%), url('../images/observatory-moon.webp'); background-size: cover; background-position: center; }.moon { display: none; position: absolute; top: 18%; left: 28%; width: 48%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 35% 27%, #efffff, #75b7d7 45%, #224571 80%); box-shadow: 0 0 60px rgba(116, 210, 255, .28), inset -20px -22px 25px rgba(22, 37, 92, .72); }.moon::after { position: absolute; inset: 20%; border-radius: 50%; background: radial-gradient(circle, rgba(15, 50, 98, .26) 0 6%, transparent 7% 16%, rgba(15, 50, 98, .2) 17% 22%, transparent 23%); content: ''; }.moon-orbit { display: none; position: absolute; top: 27%; left: 18%; width: 70%; height: 37%; border: 1px solid rgba(140, 232, 255, .34); border-radius: 50%; transform: rotate(-24deg); }.moon-dot { display: none; position: absolute; width: 5px; height: 5px; border-radius: 50%; background: var(--pink); box-shadow: 0 0 15px var(--pink); }.dot-one { top: 29%; left: 20%; }.dot-two { top: 66%; left: 71%; background: var(--cyan); box-shadow: 0 0 15px var(--cyan); }
.art-colony { background-image: linear-gradient(0deg, rgba(20, 10, 39, .78), rgba(20, 10, 39, .12) 70%), url('../images/future-base.webp'); background-size: cover; background-position: center; }.colony-planet { position: absolute; left: -15%; right: -15%; bottom: -47%; height: 85%; border-radius: 50%; background: radial-gradient(circle at 48% 15%, #faabd9, #b754bb 40%, #3a205e 74%); box-shadow: 0 -25px 55px rgba(255, 123, 208, .26); opacity: .15; }.colony-dome { position: absolute; left: 38%; bottom: 24%; width: 27%; height: 19%; border: 2px solid #a4e7ff; border-bottom: 0; border-radius: 100px 100px 0 0; box-shadow: 0 0 24px rgba(140, 232, 255, .2); opacity: .45; }.colony-line { position: absolute; bottom: 24%; left: 50%; width: 1px; height: 29%; background: rgba(164, 231, 255, .65); opacity: .35; }.colony-star { position: absolute; top: 23%; right: 22%; width: 4px; height: 4px; border-radius: 50%; background: #fff; box-shadow: 0 0 14px #fff; }
.explore-card-copy { position: absolute; right: 24px; bottom: 24px; left: 24px; z-index: 3; padding-top: 24px; border-top: 1px solid var(--line); }.card-kicker { margin: 0 0 12px; color: var(--soft); font: 9px var(--mono); letter-spacing: .08em; }.explore-card h3 { margin: 0; font-size: 25px; letter-spacing: -.06em; }.explore-card-copy > p:last-of-type { margin: 12px 0 0; color: var(--muted); font-size: 12px; line-height: 1.7; }.arrow-icon { position: absolute; right: 0; top: 25px; color: var(--pink); font-size: 22px; }
.art-ring, .art-orb, .art-spark, .moon, .moon-orbit, .moon-dot, .ship-body, .ship-light, .ship-trail, .ship-star, .colony-planet, .colony-dome, .colony-line, .colony-star { display: none !important; }

.data-section { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.data-header { display: flex; justify-content: space-between; }.data-status { display: flex; align-items: center; gap: 8px; color: var(--muted); font: 9px var(--mono); }.data-status i { background: #a8ffce; box-shadow: 0 0 14px #a8ffce; }.data-content { display: grid; grid-template-columns: .9fr 1.1fr; gap: 100px; margin-top: 30px; }.data-content h2 { padding-top: 32px; }.timeline-list { border-top: 1px solid var(--line); }.timeline-item { position: relative; display: grid; grid-template-columns: 70px 1fr 20px; gap: 24px; align-items: center; min-height: 120px; border-bottom: 1px solid var(--line); opacity: .56; transition: opacity .25s ease, padding .25s ease; }.timeline-item:hover, .timeline-item.active { opacity: 1; padding-left: 12px; }.timeline-year { color: var(--violet); font: 10px var(--mono); }.timeline-item h3 { margin: 0; font-size: 16px; font-weight: 600; }.timeline-item p { margin: 7px 0 0; color: var(--muted); font-size: 11px; }.timeline-item b { color: var(--pink); font-size: 20px; font-weight: 400; }

.contact { position: relative; min-height: 570px; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; text-align: center; }.contact .eyebrow { margin-bottom: 28px; }.contact h2 { position: relative; z-index: 2; font-size: clamp(48px, 7.5vw, 100px); }.contact > p:not(.eyebrow) { position: relative; z-index: 2; margin: 28px 0 33px; color: var(--muted); font-size: 13px; line-height: 1.8; }.button-light { position: relative; z-index: 2; color: #141026; background: var(--text); }.button-light:hover { box-shadow: 0 10px 40px rgba(243, 244, 255, .2); }.contact-orbit { position: absolute; width: 900px; height: 500px; transform: rotate(-18deg); }.contact-orbit div { position: absolute; inset: 0; border: 1px solid rgba(151, 136, 255, .15); border-radius: 50%; }.contact-orbit div:nth-child(2) { inset: 8% -10%; transform: rotate(22deg); border-color: rgba(255, 131, 200, .12); }.contact-orbit div:nth-child(3) { inset: -8% 11%; transform: rotate(-39deg); border-color: rgba(140, 232, 255, .1); }.contact-orbit::after { position: absolute; top: 44%; left: 49%; width: 10px; height: 10px; border-radius: 50%; background: var(--pink); box-shadow: 0 0 35px 10px rgba(255, 131, 200, .35); content: ''; }
.site-footer { display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; min-height: 120px; border-top: 1px solid var(--line); color: var(--muted); }.site-footer p, .site-footer > span { margin: 0; font: 9px var(--mono); letter-spacing: .08em; }.site-footer > span { text-align: right; }.footer-brand { color: var(--text); font-size: 13px; }
.reveal { opacity: 0; transform: translateY(28px); transition: opacity .8s ease, transform .8s ease; }.reveal.is-visible { opacity: 1; transform: translateY(0); }.reveal-delay-1 { transition-delay: .18s; }.reveal-delay-2 { transition-delay: .34s; }

@media (max-width: 900px) {
  :root { --shell: min(100% - 40px, 680px); }
  .site-header { height: 78px; }.desktop-nav { position: absolute; top: 78px; left: 0; right: 0; display: none; flex-direction: column; gap: 0; margin: 0; padding: 12px 20px; border: 1px solid var(--line); background: rgba(10, 11, 28, .96); backdrop-filter: blur(18px); }.desktop-nav.open { display: flex; }.desktop-nav a { padding: 17px 0; border-bottom: 1px solid var(--line); }.desktop-nav a:last-child { border-bottom: 0; }.header-cta { display: none; }.menu-toggle { display: block; }
  .hero { min-height: auto; grid-template-columns: 1fr; padding-top: 170px; }.hero-copy { padding-bottom: 20px; }.hero h1 { font-size: clamp(43px, 10vw, 70px); }.hero-visual { height: 540px; }.planet-system { width: min(88vw, 520px); height: min(88vw, 520px); min-width: 320px; min-height: 320px; }.visual-label-top { top: 25px; right: 0; }.visual-label-bottom { bottom: 27px; right: 0; }.hero-bottom { position: relative; bottom: auto; margin: 22px 0 64px; }.hero-stats { gap: 20px; }
  .section-pad { padding-top: 100px; padding-bottom: 100px; }.intro { grid-template-columns: 1fr; gap: 20px; }.intro-copy { padding-top: 0; }.large-copy { font-size: 22px; }.circle-link { margin-top: 45px; margin-right: 0; }.mission-strip { grid-template-columns: 1fr; }.mission-card { min-height: 440px; }.explore-grid { grid-template-columns: 1fr 1fr; }.explore-card { min-height: 500px; }.explore-card-tall { grid-column: span 2; }.data-content { grid-template-columns: 1fr; gap: 50px; }.data-content h2 { padding-top: 0; }.site-footer { grid-template-columns: 1fr; gap: 20px; padding: 28px 0; }.site-footer > span { text-align: left; }.heading-side-copy { max-width: 250px; }.contact-orbit { width: 650px; }
}

@media (max-width: 540px) {
  :root { --shell: calc(100% - 36px); }.site-header { width: calc(100% - 36px); }.brand { font-size: 13px; }.hero { padding-top: 135px; }.eyebrow { font-size: 9px; margin-bottom: 22px; }.hero h1 { font-size: 42px; }.hero-description { font-size: 12px; line-height: 2; }.hero-actions { gap: 18px; flex-wrap: wrap; }.button { min-width: 160px; }.hero-visual { height: 390px; }.planet-system { min-width: 290px; min-height: 290px; }.hero-bottom { align-items: flex-start; flex-direction: column-reverse; gap: 35px; margin-top: 0; }.scroll-note { align-items: center; }.hero-stats { width: 100%; justify-content: space-between; }.hero-stats strong { font-size: 18px; } h2 { font-size: 39px; }.section-heading { gap: 30px; }.section-heading:not(.split-heading) { display: block; }.intro .section-heading h2 { font-size: 34px; line-height: 1.38; }.intro h2 .keep-line { display: inline; white-space: normal; }.intro-copy { margin-top: 26px; }.large-copy { font-size: 20px; line-height: 1.7; }.mission-card { min-height: 360px; padding: 18px; }.card-footer { left: 18px; right: 18px; bottom: 18px; flex-direction: column; align-items: flex-start; gap: 9px; }.art-orb { top: 28%; left: 34%; width: 47%; }.art-ring { left: 23%; width: 69%; }.mission-card-secondary p { font-size: 21px; line-height: 1.55; }.explore-grid { grid-template-columns: 1fr; margin-top: 48px; }.explore-card, .explore-card-tall { grid-column: auto; min-height: 430px; }.split-heading { display: block; }.heading-side-copy { max-width: none; margin-top: 26px; line-height: 1.9; }.data-header { display: block; }.data-status { margin-top: -16px; justify-content: flex-end; }.data-content { margin-top: 26px; }.timeline-item { grid-template-columns: 47px 1fr 15px; gap: 10px; min-height: 112px; }.timeline-item h3 { font-size: 14px; }.timeline-item p { font-size: 10px; line-height: 1.7; }.contact { min-height: 500px; }.contact h2 { font-size: 52px; }.contact-orbit { width: 570px; }.site-footer p { line-height: 1.6; }
}
