@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700&display=swap');

:root {
  --blue: #31627b;
  --blue-bright: #4c8cab;
  --ink: #111415;
  --paper: #f5f3ee;
  --white: #fff;
  --muted: #6d7375;
  --line: rgba(17, 20, 21, .16);
  --green: #1d5b3a;
  --orange: #ffb23e;
  --ease: cubic-bezier(.2,.8,.2,1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, "Noto Sans KR", Arial, sans-serif; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
img { display: block; max-width: 100%; }
.skip-link { position: fixed; z-index: 999; top: 12px; left: 12px; padding: 12px 18px; background: #fff; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
.page-pad, .section-pad { padding-left: clamp(24px, 5.5vw, 96px); padding-right: clamp(24px, 5.5vw, 96px); }
.section-pad { padding-top: clamp(92px, 11vw, 180px); padding-bottom: clamp(92px, 11vw, 180px); }
.eyebrow { margin: 0; font-size: 11px; font-weight: 700; line-height: 1.4; letter-spacing: .2em; text-transform: uppercase; }
.eyebrow.light { color: rgba(255,255,255,.7); }

.site-header { position: fixed; z-index: 100; inset: 0 0 auto; display: flex; height: 84px; align-items: center; justify-content: space-between; padding: 0 clamp(24px, 4vw, 64px); transition: background .4s, height .4s, box-shadow .4s; }
.site-header:not(.scrolled) { color: #fff; }
.site-header:not(.scrolled) .brand img { filter: brightness(0) invert(1); }
.site-header.scrolled { height: 68px; background: rgba(255,255,255,.93); box-shadow: 0 1px 0 rgba(0,0,0,.08); backdrop-filter: blur(18px); }
.brand { z-index: 2; width: 184px; }
.brand img { width: 100%; height: auto; }
.desktop-nav { display: flex; align-items: center; gap: clamp(18px, 2.1vw, 36px); font-size: 12px; font-weight: 600; }
.desktop-nav a { position: relative; padding: 12px 0; }
.desktop-nav a::after { position: absolute; right: 0; bottom: 7px; left: 0; height: 1px; content: ""; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .35s var(--ease); }
.desktop-nav a:hover::after, .desktop-nav a:focus-visible::after { transform: scaleX(1); transform-origin: left; }
.menu-toggle { display: none; flex: 0 0 auto; border: 0; background: transparent; cursor: pointer; }
.scroll-progress { position: absolute; right: 0; bottom: 0; left: 0; height: 2px; background: transparent; }
.scroll-progress span { display: block; width: 100%; height: 100%; background: var(--blue); transform: scaleX(0); transform-origin: left; }
.mobile-menu { position: fixed; z-index: 90; inset: 0; color: #fff; background: #07161c; visibility: hidden; opacity: 0; transition: opacity .4s, visibility .4s; }
.mobile-menu.open { visibility: visible; opacity: 1; }
.mobile-menu-inner { display: flex; min-height: 100%; flex-direction: column; justify-content: center; padding: 100px 28px 40px; }
.mobile-menu nav { margin-top: 48px; }
.mobile-menu nav a { display: flex; align-items: baseline; gap: 18px; padding: 14px 0; border-bottom: 1px solid rgba(255,255,255,.16); font-size: clamp(28px, 8vw, 42px); line-height: 1.1; }
.mobile-menu nav span { color: var(--blue-bright); font-size: 10px; }
.mobile-menu-note { margin-top: auto; color: rgba(255,255,255,.5); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }

.hero { position: relative; min-height: 100svh; overflow: hidden; color: #fff; background: radial-gradient(circle at 72% 43%, #153e4e 0, #0b242e 27%, #07161c 62%, #03090c 100%); }
.hero-grid { position: absolute; inset: 0; opacity: .13; background-image: linear-gradient(rgba(255,255,255,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.22) 1px,transparent 1px); background-size: 8.333vw 8.333vw; mask-image: linear-gradient(to right,transparent,black 45%,black); }
.hero-copy { position: relative; z-index: 2; display: flex; min-height: 100svh; flex-direction: column; justify-content: center; padding-top: 120px; padding-bottom: 72px; }
.hero h1 { margin: 24px 0 0; font-size: clamp(54px, 8.2vw, 142px); font-weight: 600; letter-spacing: -.065em; line-height: .82; }
.hero h1 span { display: block; }
.hero h1 .outline { color: transparent; -webkit-text-stroke: 1.2px rgba(255,255,255,.55); }
.hero-bottom { display: flex; width: min(790px, 62vw); align-items: flex-end; justify-content: space-between; margin-top: 50px; }
.hero-bottom > p { margin: 0; color: rgba(255,255,255,.7); font-size: clamp(14px,1.2vw,18px); line-height: 1.75; }
.round-link { display: flex; width: 116px; height: 116px; flex: 0 0 auto; align-items: center; justify-content: center; gap: 12px; border: 1px solid rgba(255,255,255,.72); border-radius: 50%; font-size: 11px; font-weight: 600; line-height: 1.35; transition: color .35s, background .35s, transform .35s; }
.round-link svg { width: 19px; fill: none; stroke: currentColor; }
.round-link:hover { color: var(--ink); background: #fff; transform: rotate(-7deg); }
.scroll-cue { position: absolute; right: 34px; bottom: 40px; display: flex; align-items: center; gap: 14px; margin: 0; color: rgba(255,255,255,.5); font-size: 9px; letter-spacing: .18em; text-transform: uppercase; transform: rotate(90deg); transform-origin: right; }
.scroll-cue span { width: 54px; height: 1px; background: rgba(255,255,255,.5); }
.hero-object { position: absolute; z-index: 1; right: -2vw; top: 10%; width: min(55vw, 850px); aspect-ratio: 1; opacity: .88; transform: perspective(900px) rotateX(62deg) rotateZ(35deg); }
.hero-plan { position: absolute; inset: 3%; border: 1px solid rgba(111,190,220,.28); }
.hero-plan::before,.hero-plan::after { position:absolute;content:"";border:1px solid rgba(111,190,220,.23); }
.hero-plan::before { inset: 8% 45% 58% 7%; }.hero-plan::after { inset: 52% 9% 7% 53%; }
.hero-plan i { position:absolute;width:9px;height:9px;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:#0b242e;box-shadow:0 0 18px rgba(111,190,220,.7); }
.hero-plan i:nth-child(1){top:8%;left:7%}.hero-plan i:nth-child(2){top:31%;right:17%}.hero-plan i:nth-child(3){right:8%;bottom:7%}.hero-plan i:nth-child(4){bottom:19%;left:25%}
.hero-axis { position:absolute;background:linear-gradient(90deg,transparent,rgba(111,190,220,.35),transparent); }
.axis-x { top:50%;left:-9%;width:118%;height:1px; }.axis-y { top:-9%;left:50%;width:1px;height:118%;background:linear-gradient(transparent,rgba(111,190,220,.35),transparent); }
.hero-scan { position:absolute;inset:24%;border:1px solid rgba(255,178,62,.65);box-shadow:0 0 40px rgba(255,178,62,.12);animation:heroScan 5s ease-in-out infinite; }
@keyframes heroScan { 50% { inset:31%;opacity:.5; } }
.cube { position: absolute; border: 1px solid rgba(111,190,220,.55); }
.cube span { position: absolute; inset: 14%; border: 1px solid rgba(111,190,220,.32); }
.cube-a { inset: 9%; animation: slowSpin 20s linear infinite; }
.cube-b { inset: 28%; animation: slowSpin 12s linear reverse infinite; }
.orbit { position: absolute; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; }
.orbit-a { inset: 0; animation: breathe 6s ease-in-out infinite; }
.orbit-b { inset: 19%; animation: breathe 6s 2s ease-in-out infinite; }
@keyframes slowSpin { to { transform: rotate(360deg); } }
@keyframes breathe { 50% { opacity: .35; transform: scale(.94); } }

.section-index { display: flex; width: 100%; align-items: center; gap: 18px; margin-bottom: clamp(64px, 8vw, 120px); color: var(--muted); font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.section-index::after { height: 1px; flex: 1; content: ""; background: var(--line); }
.section-index.light { color: rgba(255,255,255,.5); }
.section-index.light::after { background: rgba(255,255,255,.15); }
.display-text { margin: 0; font-size: clamp(42px, 6.2vw, 100px); font-weight: 500; letter-spacing: -.06em; line-height: 1.02; }
.display-text em { color: var(--blue); font-family: Georgia, serif; font-weight: 400; }

.manifesto { background: var(--paper); }
.manifesto-layout { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(270px,.45fr); gap: 9vw; align-items: end; }
.manifesto-copy { border-left: 1px solid var(--line); padding-left: 34px; }
.manifesto-copy p { margin: 0 0 26px; font-size: 15px; line-height: 1.85; }
.three-principles { display: grid; grid-template-columns: repeat(3,1fr); margin-top: clamp(90px,13vw,200px); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.principle { position: relative; min-height: 440px; padding: 34px 30px; border-right: 1px solid var(--line); }
.principle:last-child { border: 0; }
.principle .number { color: var(--muted); font-size: 10px; }
.principle h3 { margin: 250px 0 14px; font-size: 27px; font-weight: 500; letter-spacing: -.03em; }
.principle p { max-width: 280px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.principle-mark { position: absolute; top: 82px; right: 30px; left: 30px; height: 160px; }
.principle-mark i { position: absolute; display: block; border: 1px solid var(--blue); }
.architecture i:nth-child(1) { inset: 20% 20% 0; }
.architecture i:nth-child(2) { inset: 0 38% 28% 0; }
.architecture i:nth-child(3) { inset: 42% 0 6% 47%; background: var(--blue); }
.intelligence i { width: 13px; height: 13px; border-radius: 50%; background: var(--blue); }
.intelligence i:nth-child(1) { top: 45%; left: 45%; width: 34px; height: 34px; }
.intelligence i:nth-child(2) { top: 8%; left: 14%; }
.intelligence i:nth-child(3) { right: 10%; top: 28%; }
.intelligence i:nth-child(4) { right: 31%; bottom: 4%; }
.intelligence::before, .intelligence::after { position: absolute; inset: 20% 20%; border: 1px solid rgba(49,98,123,.4); border-radius: 50%; content: ""; }
.intelligence::after { inset: 0 3%; }
.platform i:nth-child(1) { inset: 10% 10% 35%; border-radius: 6px; }
.platform i:nth-child(2) { inset: 35% 25% 12%; background: var(--paper); border-radius: 6px; }
.platform i:nth-child(3) { right: 12%; bottom: 0; width: 42px; height: 42px; border-radius: 50%; background: var(--blue); }

.dark-section { color: #fff; background: #091115; }
.technology-heading { display: grid; grid-template-columns: 1.45fr .55fr; gap: 9vw; align-items: end; }
.technology-heading .display-text em { color: #69a6c4; }
.technology-heading > p { margin: 0 0 10px; color: rgba(255,255,255,.58); font-size: 15px; line-height: 1.8; }
.tech-explorer { display: grid; overflow: hidden; grid-template-columns: minmax(0,1fr) 360px; min-height: 620px; margin-top: clamp(72px,10vw,140px); border: 1px solid rgba(255,255,255,.15); }
.tech-visual { position: relative; min-height: 620px; overflow: hidden; background: radial-gradient(circle at center,rgba(49,98,123,.26),transparent 62%); }
.tech-map { position: absolute; inset: 0; }
.org-map { bottom: 150px; font-size:11px; }
.org-map::before { position:absolute;inset:5%;content:"";opacity:.22;background-image:linear-gradient(rgba(104,161,188,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(104,161,188,.35) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,black,transparent); }
.org-flow { position:absolute;top:50%;left:8%;right:8%;height:1px;background:linear-gradient(90deg,rgba(104,161,188,.2),#68a1bc 48%,rgba(104,161,188,.2)); }
.org-node { position:absolute;z-index:2;display:flex;min-width:120px;min-height:64px;flex-direction:column;justify-content:center;border:1px solid rgba(104,161,188,.48);padding:13px 16px;color:#fff;background:rgba(9,17,21,.9);box-shadow:0 12px 36px rgba(0,0,0,.25); }
.org-node small { margin-bottom:7px;color:#69a6c4;font-size:7px;letter-spacing:.16em; }.org-node b { font-size:12px;letter-spacing:.02em; }
.org-user { top:9%;left:8%; }.org-praetor { top:9%;left:39%;border-color:#ffb23e;box-shadow:0 0 35px rgba(255,178,62,.12); }.org-chief { top:9%;right:8%; }
.org-ai { top:41%;min-width:105px; }.org-ai-1{left:8%}.org-ai-2{left:39%}.org-ai-3{right:8%}
.org-memory { left:17%;bottom:16%;min-width:138px;border-radius:999px;text-align:center; }.org-result { right:14%;bottom:16%;min-width:160px; }
.org-line { position:absolute;z-index:1;height:1px;background:rgba(104,161,188,.58);transform-origin:left; }
.line-1 { top:14%;left:24%;width:15%; }.line-2 { top:14%;left:55%;width:19%; }.line-3 { top:25%;left:74%;width:18%;transform:rotate(126deg); }.line-4 { top:25%;left:46%;width:18%;transform:rotate(126deg); }.line-5 { top:52%;left:21%;width:18%;transform:rotate(57deg); }.line-6 { top:52%;left:53%;width:25%;transform:rotate(35deg); }
.org-signal { position:absolute;z-index:3;width:7px;height:7px;border-radius:50%;background:#ffb23e;box-shadow:0 0 13px #ffb23e;animation:signalMove 3.5s linear infinite; }.signal-1{top:13.5%;left:24%}.signal-2{top:51.5%;left:40%;animation-delay:-1.5s}
@keyframes signalMove { 50% { transform:translateX(130px); } }
.node { position: absolute; display: grid; width: 14px; height: 14px; place-items: center; border: 1px solid #68a1bc; border-radius: 50%; background: #091115; }
.node-core { top: 37%; left: 47%; width: 100px; height: 100px; font-size: 24px; }
.node-1 { top: 18%; left: 22%; }.node-2 { top: 23%; right: 18%; }.node-3 { left: 18%; bottom: 20%; }.node-4 { right: 24%; bottom: 15%; }
.connector { position: absolute; top: 44%; left: 49%; width: 31%; height: 1px; background: linear-gradient(90deg,#68a1bc,transparent); transform-origin: left; }
.connector-1 { transform: rotate(-144deg); }.connector-2 { transform: rotate(-37deg); }.connector-3 { transform: rotate(142deg); }.connector-4 { transform: rotate(38deg); }
.pulse { position: absolute; top: calc(37% + 50px); left: calc(47% + 50px); width: 130px; height: 130px; border: 1px solid rgba(104,161,188,.28); border-radius: 50%; transform: translate(-50%,-50%); animation: pulse 3s ease-out infinite; }
.pulse-2 { animation-delay: 1.5s; }
@keyframes pulse { from { opacity: .7; transform: translate(-50%,-50%) scale(.55); } to { opacity: 0; transform: translate(-50%,-50%) scale(3.7); } }
.tech-detail { position: absolute; right: 42px; bottom: 38px; left: 42px; max-width: 440px; }
.tech-detail .eyebrow { color: #69a6c4; }
.tech-detail h3 { margin: 14px 0 12px; font-size: clamp(30px,4vw,54px); font-weight: 500; letter-spacing: -.05em; }
.tech-detail > p:last-child { margin: 0; color: rgba(255,255,255,.6); font-size: 13px; line-height: 1.7; }
.tech-tabs { border-left: 1px solid rgba(255,255,255,.15); }
.tech-tabs button { display: flex; width: 100%; min-height: 25%; align-items: center; gap: 18px; padding: 24px 28px; border: 0; border-bottom: 1px solid rgba(255,255,255,.15); color: rgba(255,255,255,.45); background: transparent; text-align: left; cursor: pointer; transition: color .25s, background .25s; }
.tech-tabs button:last-child { border-bottom: 0; }
.tech-tabs button span { font-size: 9px; }
.tech-tabs button.active, .tech-tabs button:hover { color: #fff; background: rgba(49,98,123,.24); }

.products { background: #fff; }
.products-intro .intro-copy { width: min(470px,100%); margin: 48px 0 0 auto; color: var(--muted); font-size: 15px; line-height: 1.85; }
.product { position: relative; display: grid; min-height: 720px; grid-template-columns: 1fr 1fr; overflow: hidden; }
.product-copy { position: relative; z-index: 3; display: flex; flex-direction: column; justify-content: center; padding: clamp(70px,8vw,130px); }
.product-copy .status { display: flex; align-items: center; gap: 10px; margin: 0 0 48px; font-size: 10px; font-weight: 700; letter-spacing: .16em; }
.product-copy .status span { width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.product-logo { width: min(330px,78%); height: auto; margin-bottom: 52px; }
.product-copy h3 { margin: 0 0 30px; font-size: clamp(35px,4.2vw,69px); font-weight: 500; letter-spacing: -.055em; line-height: 1.08; }
.product-copy > p:not(.status):not(.availability):not(.game-title-small) { max-width: 490px; margin: 0 0 35px; font-size: 14px; line-height: 1.8; }
.text-link { display: inline-flex; align-items: center; gap: 12px; border-bottom: 1px solid currentColor; padding: 9px 0; font-size: 12px; font-weight: 700; letter-spacing: .04em; }
.text-link span { transition: transform .25s; }.text-link:hover span { transform: translate(3px,-3px); }
.availability { align-self: flex-start; margin: 8px 0 0; padding: 9px 13px; border: 1px solid currentColor; border-radius: 999px; font-size: 9px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.product-delegia { color: #173d2a; background: #eaf3e8; }
.delegia-stage { position: relative; overflow: hidden; background: #d7e8d3; }
.delegia-orbit { position: absolute; inset: 13%; border: 1px solid rgba(29,91,58,.25); border-radius: 50%; }
.delegate-core { position: absolute; top: 50%; left: 50%; display: grid; width: 140px; height: 140px; place-items: center; border-radius: 32%; color: #fff; background: var(--green); font-family: Georgia,serif; font-size: 76px; transform: translate(-50%,-50%) rotate(-8deg); box-shadow: 0 35px 80px rgba(29,91,58,.25); }
.delegate-core::after { position: absolute; right: 25px; bottom: 22px; width: 14px; height: 14px; border-radius: 50%; content: ""; background: var(--orange); }
.delegate-app { position: absolute; display: grid; width: 86px; height: 86px; place-items: center; border: 1px solid rgba(29,91,58,.2); border-radius: 24px; background: rgba(255,255,255,.72); font-size: 11px; font-weight: 700; box-shadow: 0 20px 50px rgba(29,91,58,.08); animation: float 5s ease-in-out infinite; }
.app-chat { top: 14%; left: 18%; }.app-write { top: 17%; right: 14%; animation-delay: -.7s; }.app-grid { top: 48%; right: 8%; animation-delay: -1.4s; }.app-deck { right: 22%; bottom: 12%; animation-delay: -2.1s; }.app-canvas { bottom: 13%; left: 15%; animation-delay: -2.8s; }.app-desk { top: 46%; left: 6%; animation-delay: -3.5s; }
@keyframes float { 50% { transform: translateY(-13px) rotate(2deg); } }
.product-imperium { min-height: 760px; grid-template-columns: 1.1fr .9fr; color: #fff; background: #090a0c; }
.product-imperium .product-copy { grid-column: 2; }
.imperium-word { position: absolute; z-index: 1; top: 50%; left: -4vw; color: transparent; font-size: 17vw; font-weight: 800; letter-spacing: -.07em; line-height: 1; -webkit-text-stroke: 1px rgba(89,139,167,.18); transform: translateY(-50%) rotate(-90deg); transform-origin: center; }
.imperium-grid { position: absolute; inset: 0 50% 0 0; perspective: 900px; }
.imperium-grid::before { position: absolute; inset: 8%; content: ""; opacity: .38; background-image: linear-gradient(#31627b 1px,transparent 1px),linear-gradient(90deg,#31627b 1px,transparent 1px); background-size: 60px 60px; transform: rotateX(56deg) rotateZ(-20deg); }
.imperium-grid i { position: absolute; left: 48%; top: 50%; width: 18px; height: 18px; border: 2px solid #5a98b6; border-radius: 50%; box-shadow: 0 0 40px #31627b; }
.imperium-grid i:nth-child(2) { left: 22%; top: 30%; }.imperium-grid i:nth-child(3) { left: 65%; top: 24%; }.imperium-grid i:nth-child(4) { left: 29%; top: 72%; }.imperium-grid i:nth-child(5) { left: 75%; top: 65%; }
.wordmark { font-size: clamp(54px,7.4vw,122px)!important; font-weight: 700!important; letter-spacing: -.07em!important; }
.product-imperium .lead { color: rgba(255,255,255,.65); }
.product-imperium dl { width: min(420px,100%); margin: 45px 0 0; border-top: 1px solid rgba(255,255,255,.18); }
.product-imperium dl div { display: flex; justify-content: space-between; padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.18); }
.product-imperium dt { font-size: 12px; font-weight: 700; }.product-imperium dd { margin: 0; color: rgba(255,255,255,.5); font-size: 11px; }
.product-eapt { color: #fff; background: #16324f; }
.product-eapt .product-copy { grid-column: 2; }
.eapt-logo { padding: 12px; background: #fff; }
.eapt-city { position: relative; overflow: hidden; min-height: 680px; background: linear-gradient(#4d8eb5 0,#9bc2d3 42%,#d8dfdf 42%,#728492 100%); }
.eapt-city .sun { position: absolute; top: 13%; right: 15%; width: 130px; height: 130px; border-radius: 50%; background: rgba(255,255,255,.35); }
.building { position: absolute; bottom: 20%; border: 1px solid rgba(255,255,255,.35); background: rgba(22,50,79,.78); box-shadow: inset 0 0 0 14px rgba(255,255,255,.035); }
.building::after { position: absolute; inset: 11%; content: ""; background-image: linear-gradient(rgba(255,255,255,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.22) 1px,transparent 1px); background-size: 34px 30px; }
.b1 { left: -2%; width: 25%; height: 42%; }.b2 { left: 21%; width: 24%; height: 58%; }.b3 { left: 48%; width: 28%; height: 72%; }.b4 { right: -5%; width: 28%; height: 50%; }
.street { position: absolute; inset: 80% 0 0; background: #344655; }
.map-pin { position: absolute; top: 21%; left: 55%; width: 42px; height: 42px; border: 10px solid #2cb7a0; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); filter: drop-shadow(0 12px 10px rgba(0,0,0,.25)); }
.product-game { display: block; min-height: 760px; color: #f0dfb2; background: #17130e; }
.game-sky { position: absolute; inset: 0; overflow: hidden; background: radial-gradient(circle at 68% 33%,rgba(194,114,42,.28),transparent 20%),linear-gradient(155deg,#33291b,#0e0c09 72%); }
.game-sky::after { position: absolute; inset: 0; content: ""; opacity: .34; background: repeating-linear-gradient(115deg,transparent 0 130px,rgba(225,190,117,.13) 131px 132px); }
.game-sky span { position: absolute; bottom: -6%; width: 35%; height: 65%; background: #0b0907; clip-path: polygon(50% 0,100% 100%,0 100%); filter: drop-shadow(0 -20px 45px rgba(182,107,40,.25)); }
.game-sky span:nth-child(1) { left: -7%; }.game-sky span:nth-child(2) { left: 30%; height: 79%; }.game-sky span:nth-child(3) { right: -7%; height: 54%; }
.product-game .product-copy { min-height: 760px; justify-content: center; padding-left: 10vw; }
.game-title-small { margin: 0 0 16px!important; color: rgba(240,223,178,.6); font-size: 12px!important; font-weight: 700; letter-spacing: .25em; }
.product-game h3 { font-family: Georgia,serif; font-size: clamp(65px,11vw,180px); font-weight: 400; line-height: .76; text-shadow: 0 8px 50px rgba(0,0,0,.5); }

.research { background: var(--paper); }
.research-heading { display: grid; grid-template-columns: 1fr 310px; gap: 6vw; align-items: end; }
.research-heading > p { margin: 0 0 8px; color: var(--muted); font-size: 14px; line-height: 1.8; }
.research-list { margin-top: clamp(70px,10vw,150px); border-top: 1px solid var(--ink); }
.research-row { display: grid; grid-template-columns: 50px minmax(240px,.8fr) 1fr 30px; gap: 24px; align-items: center; min-height: 126px; border-bottom: 1px solid var(--line); transition: color .3s, padding .3s; }
.research-row:hover { padding: 0 20px; color: var(--blue); }
.research-row > span { color: var(--muted); font-size: 10px; }.research-row h3 { margin: 0; font-size: clamp(21px,2.2vw,34px); font-weight: 500; letter-spacing: -.04em; }.research-row p { margin: 0; color: var(--muted); font-size: 13px; }.research-row i { font-style: normal; }
.story { display: grid; min-height: 760px; grid-template-columns: 1fr 1fr; color: #fff; background: var(--blue); }
.story-visual { position: relative; display: flex; overflow: hidden; align-items: center; justify-content: center; background: #153646; }
.story-number { position: relative; z-index: 2; font-size: clamp(130px,20vw,310px); font-weight: 700; letter-spacing: -.1em; line-height: 1; }
.story-number span { color: #78a9bd; font-size: .32em; vertical-align: top; }
.blueprint-lines { position: absolute; inset: 8%; border: 1px solid rgba(255,255,255,.25); background-image: linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px); background-size: 48px 48px; transform: rotate(-8deg); }
.story-visual > p { position: absolute; bottom: 34px; left: 40px; margin: 0; font-size: 9px; letter-spacing: .2em; }
.story-copy { display: flex; flex-direction: column; justify-content: center; }
.story-copy .eyebrow { margin-bottom: 42px; color: rgba(255,255,255,.55); }.story-copy h2 { margin: 0 0 34px; font-size: clamp(37px,4.8vw,75px); font-weight: 500; letter-spacing: -.055em; line-height: 1.1; }.story-copy > p:last-child { max-width: 560px; margin: 0; color: rgba(255,255,255,.7); font-size: 14px; line-height: 1.9; }
.news { background: #fff; }
.news-heading { display: flex; align-items: flex-end; justify-content: space-between; }
.news-heading h2 { margin: 0; font-size: clamp(46px,7vw,110px); font-weight: 500; letter-spacing: -.065em; }.news-heading p { margin: 0 0 10px; color: var(--muted); font-size: 13px; line-height: 1.75; }
.news-coming { display: grid; min-height: 420px; grid-template-columns: 1fr 1.2fr .8fr; gap: 6vw; align-items: center; margin-top: 90px; padding: 55px; color: #fff; background: #111; }
.news-symbol { position: relative; height: 250px; }.news-symbol span { position: absolute; inset: 20%; border: 1px solid #5b92aa; transform: rotate(45deg); }.news-symbol span:nth-child(2){inset:32%;transform:rotate(0)}.news-symbol span:nth-child(3){inset:43%;background:#31627b;transform:rotate(45deg)}
.news-coming h3 { margin: 16px 0 0; font-size: clamp(38px,5vw,70px); font-weight: 500; letter-spacing: -.05em; line-height: 1; }.news-coming > p { color: rgba(255,255,255,.52); font-size: 12px; line-height: 1.7; }
.support { color: #fff; background: #07161c; }
.support .display-text { font-size: clamp(70px,13vw,210px); line-height: .8; }
.support-lead { max-width: 430px; margin: 60px 0 0 auto; color: rgba(255,255,255,.6); font-size: 14px; line-height: 1.8; }
.support-selector { display: grid; grid-template-columns: .52fr 1.48fr; min-height: 650px; margin-top: 90px; border-top: 1px solid rgba(255,255,255,.17); border-bottom: 1px solid rgba(255,255,255,.17); }
.support-buttons { border-right: 1px solid rgba(255,255,255,.17); padding: 28px 0; }
.support-buttons button { display: flex; width: 100%; align-items:center; gap:10px; border: 0; padding: 17px 25px; color: rgba(255,255,255,.42); background: transparent; text-align: left; cursor: pointer; transition: color .25s, padding .25s; }.support-buttons button.active,.support-buttons button:hover { color:#fff;padding-left:42px; }.support-buttons button.active::before { content:"→  ";color:#69a6c4; }.support-buttons button small { margin-left:auto;border:1px solid rgba(105,166,196,.42);border-radius:999px;padding:3px 7px;color:#81b7d0;font-size:8px;font-weight:700;letter-spacing:.08em;line-height:1; }
.support-result { display: flex; flex-direction: column; justify-content: center; padding: clamp(42px,5vw,80px); }.support-result .eyebrow { color: #69a6c4; }.support-result h3 { display:flex;align-items:baseline;gap:16px;margin:18px 0 7px;font-size:clamp(40px,5.4vw,82px);font-weight:500;letter-spacing:-.06em; }.support-result h3 small { color:rgba(255,255,255,.4);font-size:.22em;font-weight:600;letter-spacing:.08em;text-transform:uppercase; }.support-result > p:not(.eyebrow) { margin: 0; color: rgba(255,255,255,.52); }.support-result .support-state { margin-top:11px;color:#69a6c4;font-size:10px;font-weight:700;letter-spacing:.08em; }.support-tools { display:grid;grid-template-columns:1fr 1fr;margin-top:38px;border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16); }.support-tools button { position:relative;display:grid;min-height:80px;grid-template-columns:28px 1fr 24px;grid-template-rows:1fr 1fr;align-items:end;border:0;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);padding:15px 17px;color:#fff;background:transparent;text-align:left;cursor:pointer;transition:background .25s; }.support-tools button:hover,.support-tools button:focus-visible { background:rgba(49,98,123,.24); }.support-tools button span { grid-row:1/3;align-self:center;color:#69a6c4;font-size:8px; }.support-tools button b { font-size:11px;font-weight:600; }.support-tools button small { color:rgba(255,255,255,.38);font-size:9px; }.support-tools button i { grid-column:3;grid-row:1/3;align-self:center;font-style:normal;color:#69a6c4; }.support-result.planned-home .support-state { color:#d9b879; }.support-result.planned-home .support-tools button { color:rgba(255,255,255,.58);cursor:default; }.support-result.planned-home .support-tools button:hover,.support-result.planned-home .support-tools button:focus-visible { background:transparent; }.support-result.planned-home .support-tools button span,.support-result.planned-home .support-tools button i { color:#a98d59; }.support-result .support-service-link { align-self:flex-start;margin-top:30px;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:8px;font-size:11px; }.support-result .support-service-link.disabled { pointer-events:none;color:rgba(255,255,255,.32);border-color:rgba(255,255,255,.15); }
.site-footer { color: #fff; background: #03090c; padding: clamp(70px,8vw,120px) clamp(24px,5.5vw,96px) 28px; }.footer-top { display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:65px;border-bottom:1px solid rgba(255,255,255,.17); }.footer-top img { width:min(440px,47vw); }.footer-top p { margin:0;color:rgba(255,255,255,.45);font-family:Georgia,serif;font-size:22px;font-style:italic; }.footer-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:64px 0 100px; }.footer-grid div { display:flex;flex-direction:column;gap:13px; }.footer-label { margin:0 0 14px;color:#69a6c4;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase; }.footer-grid a,.footer-grid span { color:rgba(255,255,255,.62);font-size:12px; }.footer-grid a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;padding-top:24px;border-top:1px solid rgba(255,255,255,.17);color:rgba(255,255,255,.35);font-size:9px;letter-spacing:.08em;}

.reveal { opacity: 0; transform: translateY(32px); transition: opacity .85s var(--ease), transform .85s var(--ease); }
.reveal.visible { opacity: 1; transform: translateY(0); }
:focus-visible { outline: 2px solid #ffb23e; outline-offset: 5px; }

@media (max-width: 1020px) {
  .desktop-nav { display: none; }.menu-toggle { display: grid; position: relative; z-index: 101; width: 56px; height: 56px; place-content: center; gap: 6px; }.menu-toggle span { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0); }.menu-toggle i { display:block;width:25px;height:2px;background:currentColor;transition:transform .3s; }.menu-toggle[aria-expanded="true"] { color:#fff; }.menu-toggle[aria-expanded="true"] i:first-of-type { transform:translateY(4px) rotate(45deg); }.menu-toggle[aria-expanded="true"] i:last-of-type { transform:translateY(-4px) rotate(-45deg); }
  .hero-bottom { width: 76vw; }.manifesto-layout,.technology-heading,.research-heading { grid-template-columns: 1fr; }.manifesto-copy { max-width:600px;margin:50px 0 0 auto; }.tech-explorer { grid-template-columns:1fr; }.tech-tabs { display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.15);border-left:0; }.tech-tabs button { min-height:100px;border-right:1px solid rgba(255,255,255,.15); }.product { min-height: 760px; }.product-copy { padding: 70px 6vw; }.research-heading > p { margin-top:35px; }.news-heading { align-items:flex-start;flex-direction:column;gap:28px; }.news-coming { grid-template-columns:.65fr 1fr; }.news-coming > p { grid-column:2; }.story { min-height:650px; }
}

@media (max-width: 720px) {
  .site-header { height:70px;padding:0 20px; }.site-header.scrolled { height:62px; }.brand { width:142px; }.site-header:not(.scrolled) .brand img { filter: brightness(0) invert(1); }.menu-toggle { width:44px;height:44px; }.site-header:not(.scrolled) .menu-toggle { color:#fff; }
  .hero-copy { justify-content:flex-end;padding-top:100px;padding-bottom:48px; }.hero-grid { background-size:25vw 25vw; }.hero-object { top:10%;right:-42%;width:120vw;opacity:.5; }.hero h1 { font-size:clamp(42px,12.4vw,58px);line-height:.9; }.hero-bottom { width:100%;align-items:flex-end;margin-top:30px; }.hero-bottom > p { max-width:195px;font-size:11px; }.round-link { width:78px;height:78px;font-size:8px; }.round-link svg{display:none}.scroll-cue{display:none}
  .section-index { margin-bottom:60px; }.display-text { font-size:clamp(39px,11.8vw,61px); }.manifesto-layout { display:block; }.manifesto-copy { margin-top:45px;padding-left:20px; }.three-principles { display:block;margin-top:85px; }.principle { min-height:300px;border-right:0;border-bottom:1px solid var(--line);padding:28px 0; }.principle:last-child{border-bottom:0}.principle-mark{top:50px;right:0;left:42%;height:105px}.principle h3{margin-top:178px}.technology-heading>p{margin-top:38px}.tech-explorer{min-height:auto;margin-top:65px}.tech-visual{min-height:620px}.org-map{bottom:190px}.org-node{min-width:92px;min-height:48px;padding:8px 10px}.org-node small{margin-bottom:4px;font-size:5px}.org-node b{font-size:9px}.org-user{top:4%;left:5%}.org-praetor{top:4%;left:auto;right:5%}.org-chief{top:28%;right:auto;left:34%}.org-ai{top:53%;min-width:88px}.org-ai-1{left:3%}.org-ai-2{left:36%}.org-ai-3{right:3%}.org-memory{left:5%;bottom:5%;min-width:106px}.org-result{right:5%;bottom:5%;min-width:116px}.org-line{display:none}.org-signal{display:none}.tech-detail{right:22px;bottom:25px;left:22px}.tech-tabs{grid-template-columns:1fr 1fr}.tech-tabs button{min-height:74px;padding:15px 14px;border-right:1px solid rgba(255,255,255,.15);font-size:11px}.product{display:flex;min-height:auto;flex-direction:column}.product-copy{order:2;min-height:430px;padding:56px 24px}.product-copy .status{margin-bottom:30px}.product-logo{width:min(245px,75%);margin-bottom:30px}.product-copy h3{font-size:clamp(31px,9.5vw,44px);margin-bottom:22px}.product-copy>p:not(.status):not(.availability):not(.game-title-small){margin-bottom:24px}.delegia-stage{order:1;min-height:340px}.delegate-app{width:54px;height:54px;border-radius:15px;font-size:8px}.delegate-core{width:92px;height:92px;font-size:49px}.product-imperium{display:block;min-height:540px}.product-imperium .product-copy{min-height:540px;padding-top:82px}.imperium-grid{inset:0}.imperium-word{top:50%;left:-40%;font-size:35vw;opacity:.6}.product-eapt .eapt-city{display:none}.product-eapt .product-copy{min-height:450px}.product-eapt .product-copy{grid-column:auto}.product-game,.product-game .product-copy{min-height:560px}.product-game .product-copy{padding-left:24px}.product-game h3{font-size:18vw}.research-heading>p{margin-top:30px}.research-row{grid-template-columns:36px 1fr 20px;gap:10px;min-height:100px}.research-row p{display:none}.story{display:flex;flex-direction:column}.story-visual{min-height:350px}.story-copy{min-height:440px}.news-coming{display:block;min-height:auto;margin-top:55px;padding:34px 24px}.news-symbol{height:150px}.news-coming>div:nth-child(2){margin:22px 0 35px}.support .display-text{font-size:19vw}.support-lead{margin-top:38px}.support-selector{grid-template-columns:1fr;min-height:auto;margin-top:60px}.support-buttons{display:grid;grid-template-columns:1fr 1fr;border-right:0;border-bottom:1px solid rgba(255,255,255,.17);padding:12px 0}.support-buttons button{padding:11px;font-size:11px}.support-buttons button.active,.support-buttons button:hover{padding-left:17px}.support-result{min-height:auto;padding:45px 12px 55px}.support-result h3{display:block;font-size:12vw}.support-result h3 small{display:block;margin-top:9px;font-size:9px}.support-tools{grid-template-columns:1fr;margin-top:28px}.support-tools button{min-height:68px}.footer-top{align-items:flex-start;flex-direction:column;gap:35px}.footer-top img{width:min(360px,90vw)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid div:last-child{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column;gap:20px}
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }.reveal{opacity:1;transform:none}
}
