:root { color: #08111f; background: #f8fbff; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-synthesis: none; text-rendering: optimizeLegibility; } * { box-sizing: border-box; } html { scroll-behavior: smooth; } body { margin: 0; overflow-x: hidden; } a { color: inherit; text-decoration: none; } button { font: inherit; } img { display: block; max-width: 100%; } .space-page { --ink: #08111f; --muted: #5f6f84; --line: rgba(121, 143, 166, 0.26); --panel: rgba(255, 255, 255, 0.72); --shadow: 0 28px 80px rgba(13, 26, 52, 0.15); min-height: 100vh; background: radial-gradient(circle at 16% 12%, rgba(37, 99, 235, 0.16), transparent 24rem), radial-gradient(circle at 84% 8%, rgba(6, 182, 212, 0.2), transparent 22rem), linear-gradient(135deg, #f8fbff, #edf8fb 48%, #f8fbff); } .hero-section { position: relative; min-height: 100svh; overflow: hidden; padding: 22px min(5vw, 64px) 58px; } .grid-bg, .noise-bg, .light-ribbon { position: absolute; inset: 0; pointer-events: none; } .grid-bg { background: linear-gradient(rgba(75, 98, 122, 0.09) 1px, transparent 1px), linear-gradient(90deg, rgba(75, 98, 122, 0.09) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(to bottom, black 0%, black 74%, transparent 100%); } .noise-bg { opacity: 0.28; background-image: radial-gradient(rgba(8, 17, 31, 0.12) 0.7px, transparent 0.7px); background-size: 6px 6px; } .light-ribbon { inset: 10% -12% auto auto; width: 58vw; height: 34vw; border-radius: 999px; background: linear-gradient(135deg, rgba(37, 99, 235, 0.2), rgba(6, 182, 212, 0.1), rgba(255, 255, 255, 0)); filter: blur(16px); transform: rotate(-12deg); } .topbar, .hero-layout, .profile-theatre, .runway-section, .evidence-section { position: relative; z-index: 1; width: min(1180px, calc(100% - 32px)); margin-inline: auto; } .topbar { display: flex; align-items: center; justify-content: space-between; min-height: 52px; } .brand { display: inline-flex; align-items: center; gap: 11px; font-weight: 900; letter-spacing: 0; } .brand img { width: 38px; height: 38px; border-radius: 12px; box-shadow: 0 12px 28px rgba(37, 99, 235, 0.24); } .nav-actions { display: flex; gap: 10px; color: #42546c; font-size: 0.92rem; font-weight: 800; } .nav-actions a { padding: 8px 11px; border-radius: 999px; } .nav-actions a:hover { background: rgba(37, 99, 235, 0.08); color: #2563eb; } .hero-layout { display: grid; grid-template-columns: minmax(0, 0.84fr) minmax(420px, 0.9fr); gap: min(4vw, 44px); align-items: center; min-height: calc(100svh - 96px); } .hero-copy h1 { max-width: 650px; margin: 18px 0 16px; color: var(--ink); font-size: clamp(2.8rem, 5vw, 4.9rem); line-height: 0.98; letter-spacing: 0; } .hero-copy p { max-width: 650px; margin: 0; color: #455873; font-size: clamp(1rem, 1.6vw, 1.22rem); line-height: 1.7; } .status-row, .cta-row, .tag-row { display: flex; flex-wrap: wrap; gap: 10px; } .status-row span, .status-row a { display: inline-flex; align-items: center; min-height: 32px; padding: 0 11px; border: 1px solid rgba(37, 99, 235, 0.18); border-radius: 999px; color: #2563eb; background: rgba(219, 234, 254, 0.72); font-size: 0.78rem; font-weight: 900; text-transform: uppercase; } .status-row a:hover { background: rgba(191, 219, 254, 0.9); } .cta-row { margin-top: 28px; } .button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 18px; border: 1px solid var(--line); border-radius: 15px; background: rgba(255, 255, 255, 0.76); box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) inset, 0 12px 24px rgba(13, 26, 52, 0.08); color: #132238; font-weight: 900; transition: transform 0.18s ease, box-shadow 0.18s ease; } .button.primary { color: white; border-color: rgba(6, 182, 212, 0.4); background: linear-gradient(135deg, #2563eb, #06b6d4); box-shadow: 0 20px 46px rgba(37, 99, 235, 0.26); } .button.muted { color: #64748b; background: rgba(241, 245, 249, 0.72); } .button:hover { transform: translateY(-2px); box-shadow: 0 18px 34px rgba(13, 26, 52, 0.13); } .poster-shell { position: relative; min-height: min(500px, calc(100svh - 170px)); padding: 18px; border: 1px solid rgba(255, 255, 255, 0.78); border-radius: 30px; background: linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(145deg, rgba(9, 18, 32, 0.92), rgba(31, 58, 138, 0.88)); background-size: 38px 38px, 38px 38px, auto; box-shadow: var(--shadow); perspective: 1000px; } .poster-topline { display: flex; justify-content: space-between; gap: 14px; margin-bottom: 14px; color: rgba(255, 255, 255, 0.76); font-size: 0.82rem; font-weight: 900; text-transform: uppercase; } .poster-frame { position: relative; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 22px; background: #020617; box-shadow: 0 30px 70px rgba(0, 0, 0, 0.26); } .poster-frame img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; opacity: 0.92; } .play-chip { position: absolute; left: 16px; bottom: 16px; padding: 9px 12px; border-radius: 999px; color: white; background: rgba(15, 23, 42, 0.72); backdrop-filter: blur(12px); font-size: 0.8rem; font-weight: 900; } .floating-stack { position: absolute; right: -22px; bottom: 24px; width: 56%; min-height: min(280px, 30vh); } .floating-stack img { position: absolute; inset: auto 0 0 auto; width: 82%; border: 1px solid rgba(255, 255, 255, 0.55); border-radius: 18px; box-shadow: 0 22px 48px rgba(0, 0, 0, 0.24); transform: translate(calc(var(--i) * -38px), calc(var(--i) * -62px)) rotate(calc(var(--i) * -4deg)); } .profile-theatre, .runway-section, .evidence-section { padding: 58px 0; } .section-label { color: #0f766e; font-size: 0.84rem; font-weight: 1000; text-transform: uppercase; } .profile-grid, .evidence-grid { display: grid; grid-template-columns: minmax(360px, 0.92fr) minmax(0, 1.08fr); gap: min(5vw, 56px); align-items: center; } .profile-copy-panel, .link-panel { border: 1px solid var(--line); border-radius: 24px; background: var(--panel); box-shadow: var(--shadow); backdrop-filter: blur(18px); } .profile-copy-panel { padding: 24px; } .profile-tabs { display: flex; gap: 8px; margin-bottom: 22px; } .profile-tabs button { min-height: 40px; padding: 0 14px; border: 1px solid var(--line); border-radius: 999px; color: #42546c; background: rgba(255, 255, 255, 0.75); font-weight: 900; cursor: pointer; } .profile-tabs button.active { color: white; border-color: transparent; background: var(--active); } .profile-kicker { margin: 0 0 8px; color: var(--active); font-weight: 1000; text-transform: uppercase; } .profile-copy-panel h2, .runway-head h2, .evidence-section h2 { margin: 0 0 12px; color: var(--ink); font-size: clamp(2rem, 4vw, 4.2rem); line-height: 0.98; } .profile-copy-panel p, .runway-head p, .evidence-section p { color: var(--muted); line-height: 1.65; } .tag-row span { display: inline-flex; padding: 7px 10px; border: 1px solid color-mix(in srgb, var(--active) 28%, transparent); border-radius: 999px; color: var(--active); background: var(--active-soft); font-size: 0.82rem; font-weight: 900; } .morph-stage { position: relative; min-height: 500px; } .morph-card { position: absolute; width: min(620px, 82%); overflow: hidden; border: 1px solid var(--line); border-radius: 24px; background: white; box-shadow: var(--shadow); transform: translate(calc(var(--i) * 52px), calc(var(--i) * 76px)) rotate(calc(var(--i) * 2.5deg)); transition: transform 0.35s ease, box-shadow 0.35s ease; } .morph-card:hover { transform: translate(calc(var(--i) * 48px), calc(var(--i) * 66px - 8px)) rotate(calc(var(--i) * 1.4deg)); box-shadow: 0 34px 90px rgba(13, 26, 52, 0.2); } .morph-card img { width: 100%; aspect-ratio: 16 / 10; object-fit: contain; } .morph-card div, .runway-caption { display: flex; align-items: center; gap: 10px; padding: 13px 15px; border-top: 1px solid var(--line); } .morph-card span, .runway-caption span { padding: 5px 8px; border-radius: 999px; color: var(--active); background: var(--active-soft); font-size: 0.76rem; font-weight: 1000; text-transform: uppercase; } .runway-head { display: grid; grid-template-columns: minmax(0, 0.75fr) minmax(260px, 0.35fr); gap: 32px; align-items: end; margin-bottom: 12px; } .runway-controls { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 18px; } .runway-nav { display: inline-grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(37, 99, 235, 0.2); border-radius: 999px; color: #0f172a; background: rgba(255, 255, 255, 0.86); box-shadow: 0 16px 34px rgba(13, 26, 52, 0.1), 0 1px 0 rgba(255, 255, 255, 0.9) inset; cursor: pointer; transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease; } .runway-nav:hover:not(:disabled), .runway-nav:focus-visible { border-color: var(--active); box-shadow: 0 20px 42px rgba(37, 99, 235, 0.16); transform: translateY(-2px); outline: none; } .runway-nav:disabled { cursor: default; opacity: 0.36; } .page-chip { display: inline-flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 16px; border: 1px solid rgba(37, 99, 235, 0.18); border-radius: 999px; background: rgba(255, 255, 255, 0.78); box-shadow: 0 12px 28px rgba(13, 26, 52, 0.08); } .page-chip span { color: var(--active); font-size: 0.78rem; font-weight: 1000; text-transform: uppercase; } .page-chip strong { color: #0f172a; font-size: 0.94rem; } .chevron { width: 13px; height: 13px; border-top: 3px solid currentColor; border-right: 3px solid currentColor; } .chevron.left { transform: translateX(2px) rotate(-135deg); } .chevron.right { transform: translateX(-2px) rotate(45deg); } .runway-projector { position: relative; display: grid; place-items: center; padding: 8px 74px 22px; outline: none; } .runway-projector:focus-visible { border-radius: 28px; outline: 3px solid color-mix(in srgb, var(--active) 34%, transparent); outline-offset: 5px; } .runway-card { width: min(100%, 1080px); overflow: hidden; border: 1px solid var(--line); border-radius: 24px; background: rgba(255, 255, 255, 0.9); box-shadow: 0 16px 42px rgba(13, 26, 52, 0.08); transition: box-shadow 0.28s ease, border-color 0.28s ease; } .runway-card.current { border-color: color-mix(in srgb, var(--active) 24%, var(--line)); box-shadow: 0 32px 92px rgba(13, 26, 52, 0.17); } .runway-card img { width: 100%; aspect-ratio: 16 / 10; object-fit: contain; background: white; } .page-turn { position: absolute; z-index: 2; top: calc(50% - 34px); display: inline-grid; place-items: center; width: 62px; height: 62px; border: 1px solid rgba(37, 99, 235, 0.2); border-radius: 999px; color: #0f172a; background: linear-gradient(145deg, rgba(255, 255, 255, 0.95), rgba(232, 245, 249, 0.78)); box-shadow: 0 24px 58px rgba(13, 26, 52, 0.14), 0 1px 0 rgba(255, 255, 255, 0.96) inset; cursor: pointer; transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease; } .page-turn.previous { left: 0; } .page-turn.next { right: 0; } .page-turn:hover:not(:disabled), .page-turn:focus-visible { border-color: var(--active); box-shadow: 0 28px 72px rgba(37, 99, 235, 0.18); transform: translateY(-2px); outline: none; } .page-turn:disabled { cursor: default; opacity: 0.32; } .progress-rail { display: grid; grid-template-columns: repeat(24, minmax(18px, 1fr)); gap: 5px; width: min(940px, calc(100% - 32px)); margin: 10px auto 0; } .progress-rail button { position: relative; display: grid; place-items: center; min-width: 0; height: 22px; border: 0; border-radius: 999px; background: rgba(121, 143, 166, 0.28); cursor: pointer; transition: transform 0.16s ease, background 0.16s ease; } .progress-rail button span { color: transparent; font-size: 0; } .progress-rail .product { --rail: #2563eb; } .progress-rail .research { --rail: #0f766e; } .progress-rail .visual { --rail: #06b6d4; } .progress-rail button:hover, .progress-rail button:focus-visible { background: color-mix(in srgb, var(--rail) 46%, white); outline: none; transform: scaleY(1.22); } .progress-rail button.active { background: var(--rail); transform: scaleY(1.65); } .progress-rail button.active span { color: white; font-size: 0.62rem; font-weight: 1000; } .metric-grid { display: grid; grid-template-columns: 1fr; gap: 12px; margin-top: 26px; } .metric-grid article { display: grid; grid-template-columns: 44px 1fr; gap: 8px 14px; min-height: 0; padding: 18px 20px; border: 1px solid var(--line); border-radius: 22px; background: rgba(255, 255, 255, 0.78); box-shadow: 0 12px 28px rgba(13, 26, 52, 0.07); } .metric-grid span { grid-row: span 2; color: var(--active); font-weight: 1000; } .metric-grid strong { display: block; margin: 0; color: var(--ink); font-size: 1.15rem; } .metric-grid p { margin: 0; } .link-panel { position: sticky; top: 24px; display: grid; gap: 12px; padding: 18px; } .link-panel img { width: 100%; border-radius: 18px; background: white; border: 1px solid var(--line); } .resource-card { display: grid; gap: 4px; padding: 14px 15px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255, 255, 255, 0.74); color: #132238; font-weight: 900; } .resource-card.demo-resource { border-color: rgba(6, 182, 212, 0.36); background: linear-gradient(135deg, rgba(37, 99, 235, 0.1), rgba(6, 182, 212, 0.16)), rgba(255, 255, 255, 0.82); box-shadow: 0 18px 38px rgba(37, 99, 235, 0.12); } .resource-card.demo-resource strong { color: #0f3f95; } .resource-card span { color: var(--active); font-size: 0.74rem; font-weight: 1000; text-transform: uppercase; } .resource-card strong { font-size: 0.98rem; line-height: 1.35; word-break: break-word; } .resource-card small { color: var(--muted); line-height: 1.45; } .resource-card:hover { border-color: color-mix(in srgb, var(--active) 30%, var(--line)); background: rgba(255, 255, 255, 0.92); } .link-panel small { color: var(--muted); line-height: 1.55; } @media (max-width: 960px) { .hero-section { padding-inline: 0; } .topbar, .hero-layout, .profile-theatre, .runway-section, .evidence-section { width: min(100% - 24px, 720px); } .hero-layout, .profile-grid, .evidence-grid, .runway-head { grid-template-columns: 1fr; } .runway-controls { justify-content: flex-start; } .runway-projector { padding-inline: 58px; } .page-turn { width: 52px; height: 52px; } .hero-layout { padding-top: 36px; min-height: 0; } .poster-shell { min-height: 0; } .floating-stack { display: none; } .morph-stage { min-height: 430px; } .morph-card { width: 86%; } .metric-grid { grid-template-columns: 1fr; } .link-panel { position: static; } } @media (max-width: 620px) { .nav-actions { display: none; } .hero-copy h1 { font-size: clamp(2.1rem, 10vw, 3.35rem); line-height: 0.98; } .hero-copy p { font-size: 0.98rem; line-height: 1.55; } .cta-row { margin-top: 20px; } .button { min-height: 44px; padding: 0 14px; } .hero-section { min-height: 0; padding-bottom: 44px; } .profile-theatre, .runway-section, .evidence-section { padding: 52px 0; } .profile-copy-panel { padding: 20px; } .profile-tabs { overflow-x: auto; padding-bottom: 4px; } .morph-stage { min-height: 370px; } .morph-card { width: 91%; border-radius: 18px; transform: translate(calc(var(--i) * 18px), calc(var(--i) * 60px)) rotate(calc(var(--i) * 1.3deg)); } .runway-card { border-radius: 18px; } .runway-projector { padding: 4px 0 66px; } .page-turn { top: auto; bottom: 0; } .page-turn.previous { left: calc(50% - 64px); } .page-turn.next { right: calc(50% - 64px); } .progress-rail { grid-template-columns: repeat(12, minmax(16px, 1fr)); width: calc(100% - 24px); } .morph-card div, .runway-caption { align-items: flex-start; flex-direction: column; gap: 7px; } } @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; } .floating-stack img, .morph-card, .runway-card, .page-turn { transform: none !important; } }