:root {
  --ink: #090a0a;
  --ink-2: #111314;
  --paper: #f3f0e8;
  --paper-2: #dedbd2;
  --acid: #caff42;
  --cobalt: #6f79ff;
  --ember: #ff6b48;
  --line: rgba(243, 240, 232, 0.16);
  --muted: rgba(243, 240, 232, 0.64);
  --display: "Arial Black", "Helvetica Neue", Arial, sans-serif;
  --body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --serif: Iowan Old Style, Baskerville, "Times New Roman", serif;
  --max: 1440px;
  --pad: clamp(1.15rem, 3vw, 3rem);
  --ease: cubic-bezier(.2,.8,.2,1);
}

* { box-sizing: border-box; }
html { background: var(--ink); color: var(--paper); scroll-behavior: smooth; overflow-x:hidden; }
body { margin: 0; min-width: 320px; font-family: var(--body); background: var(--ink); color: var(--paper); overflow-x: hidden; }
body::selection { background: var(--acid); color: var(--ink); }
body.is-menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 2px solid var(--acid); outline-offset: 5px; }

.skip-link { position: fixed; z-index: 1000; left: 1rem; top: 1rem; padding: .8rem 1rem; background: var(--acid); color: var(--ink); transform: translateY(-180%); transition: transform .2s; }
.skip-link:focus { transform: translateY(0); }
.noise { position: fixed; inset: 0; z-index: 90; pointer-events: none; opacity: .055; 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='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E"); mix-blend-mode: soft-light; }
.cursor-glow { display:none; }
.scroll-progress { position: fixed; z-index: 200; top: 0; left: 0; width: 100%; height: 2px; transform: scaleX(0); transform-origin: left; background:var(--acid); }

.site-header { position: fixed; z-index: 100; top: 0; left: 0; width: 100%; border-bottom: 1px solid transparent; transition: background .3s, border-color .3s; }
.site-header.scrolled { background: rgba(9,10,10,.82); border-color: var(--line); backdrop-filter: blur(18px); }
.header-inner { width: min(100%, var(--max)); margin: auto; padding: .9rem var(--pad); display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.brand { display: inline-flex; align-items: center; gap: .75rem; font-weight: 760; letter-spacing: -.04em; }
.brand img { width: 2.2rem; height: 2.2rem; }
.brand-word { font-size: 1.05rem; }
.brand-word span { color: var(--acid); }
.desktop-nav { display: flex; align-items: center; gap: clamp(1.2rem,2vw,2.4rem); font-size: .78rem; text-transform: uppercase; letter-spacing: .12em; }
.desktop-nav a { position: relative; padding: .5rem 0; color: var(--muted); }
.desktop-nav a::after { content:""; position:absolute; left:0; bottom:0; width:100%; height:1px; background:var(--acid); transform:scaleX(0); transform-origin:right; transition:transform .3s var(--ease); }
.desktop-nav a:hover, .desktop-nav a[aria-current="page"] { color:var(--paper); }
.desktop-nav .nav-app { color:var(--acid); }
.desktop-nav .nav-app:hover { color:var(--paper); }
.desktop-nav a:hover::after, .desktop-nav a[aria-current="page"]::after { transform:scaleX(1); transform-origin:left; }
.nav-cta { display:inline-flex; align-items:center; gap:.7rem; border:1px solid var(--line); border-radius:999px; padding:.72rem 1rem !important; color:var(--paper) !important; }
.nav-cta::after { display:none; }
.nav-cta i { width:.5rem; height:.5rem; background:var(--acid); border-radius:50%; box-shadow:0 0 0 5px rgba(202,255,66,.1); }
.menu-toggle { display:none; width:2.7rem; height:2.7rem; border:1px solid var(--line); border-radius:50%; background:transparent; color:var(--paper); padding:.72rem; }
.menu-toggle span { display:block; height:1px; background:currentColor; margin:.3rem 0; transition:transform .25s, opacity .25s; }
.menu-toggle[aria-expanded="true"] span:first-child { transform:translateY(.2rem) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:last-child { transform:translateY(-.2rem) rotate(-45deg); }
.mobile-menu { display:none; position:fixed; inset:0; z-index:95; padding:7rem var(--pad) 2rem; background:var(--ink); }
.mobile-menu nav { display:grid; }
.mobile-menu nav a { display:flex; justify-content:space-between; align-items:center; padding:1rem 0; border-bottom:1px solid var(--line); font-family:var(--display); font-size:clamp(2rem,11vw,4.5rem); text-transform:uppercase; letter-spacing:-.07em; }
.mobile-menu nav a span { color:var(--acid); font:500 .7rem var(--body); letter-spacing:.16em; }
.mobile-menu-meta { position:absolute; bottom:2rem; left:var(--pad); color:var(--muted); font-size:.75rem; text-transform:uppercase; letter-spacing:.12em; }

.shell { width:min(100%,var(--max)); margin:auto; padding-inline:var(--pad); }
.section { position:relative; padding:clamp(5.5rem,11vw,10rem) 0; }
.section-line { border-top:1px solid var(--line); }
.eyebrow { display:flex; align-items:center; gap:.75rem; margin:0 0 1.5rem; color:var(--muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.19em; }
.eyebrow::before { content:""; flex:0 0 .55rem; width:.55rem; height:.55rem; border-radius:50%; background:var(--acid); box-shadow:0 0 0 5px rgba(202,255,66,.08); }
.eyebrow.cobalt::before { background:var(--cobalt); box-shadow:0 0 0 5px rgba(111,121,255,.09); }
.eyebrow.ember::before { background:var(--ember); box-shadow:0 0 0 5px rgba(255,107,72,.09); }
.display { margin:0; font-family:var(--display); font-weight:900; text-transform:uppercase; letter-spacing:-.075em; line-height:.83; text-wrap:balance; }
.display-xl { font-size:clamp(3.75rem,10.3vw,10.5rem); }
.display-lg { font-size:clamp(3rem,7vw,7.2rem); }
.display-md { font-size:clamp(2.4rem,5vw,5rem); }
.serif-accent { font-family:var(--serif); font-style:italic; font-weight:400; text-transform:none; letter-spacing:-.07em; }
.lede { max-width:42rem; margin:1.75rem 0 0; color:var(--muted); font-size:clamp(1rem,1.35vw,1.28rem); line-height:1.65; text-wrap:pretty; }
.button-row { display:flex; flex-wrap:wrap; align-items:center; gap:.7rem; margin-top:2rem; }
.text-action { padding:.7rem .1rem; color:var(--paper-2); border-bottom:1px solid var(--line); font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.text-action:hover { color:var(--acid); border-color:var(--acid); }
.button { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:1.25rem; min-height:3.45rem; padding:0 1.35rem; overflow:hidden; border:1px solid var(--line); border-radius:999px; color:var(--paper); font-size:.72rem; font-weight:750; text-transform:uppercase; letter-spacing:.12em; transition:border-color .3s, color .3s, transform .3s; }
.button::before { content:""; position:absolute; inset:0; background:var(--paper); transform:translateY(105%); transition:transform .38s var(--ease); }
.button span, .button svg { position:relative; z-index:1; }
.button svg { width:1rem; }
.button:hover { color:var(--ink); border-color:var(--paper); transform:translateY(-2px); }
.button:hover::before { transform:translateY(0); }
.button-acid { background:var(--acid); color:var(--ink); border-color:var(--acid); }
.button-acid::before { background:var(--paper); }

.hero { position:relative; min-height:min(960px,100svh); display:flex; align-items:flex-end; overflow:hidden; padding:10rem 0 3rem; }
.hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg, var(--ink) 0%, rgba(9,10,10,.96) 25%, rgba(9,10,10,.52) 54%, rgba(9,10,10,.06) 100%), linear-gradient(0deg, var(--ink) 0%, transparent 28%); z-index:1; }
.hero-media { position:absolute; inset:0 0 0 30%; background:url("/assets/hirenest-foundry-hero.webp") center right / cover no-repeat; transform:scale(1.03); }
.hero-media::after { content:""; position:absolute; inset:0; background:radial-gradient(circle at 75% 56%, transparent 0 15%, rgba(9,10,10,.12) 60%, var(--ink) 100%); }
.hero-grid { position:absolute; inset:0; z-index:1; background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size:7vw 7vw; mask-image:linear-gradient(to bottom,transparent,black 35%,black); }
.hero-orbit { position:absolute; z-index:2; right:7%; top:18%; width:clamp(11rem,21vw,22rem); aspect-ratio:1; border:1px solid rgba(243,240,232,.2); border-radius:50%; animation:spin 28s linear infinite; }
.hero-orbit::before, .hero-orbit::after { content:""; position:absolute; width:.65rem; height:.65rem; border-radius:50%; background:var(--acid); box-shadow:0 0 20px var(--acid); }
.hero-orbit::before { top:8%; left:25%; }
.hero-orbit::after { right:9%; bottom:22%; background:var(--ember); box-shadow:0 0 20px var(--ember); }
@keyframes spin { to { transform:rotate(360deg); } }
.hero-content { position:relative; z-index:3; width:min(100%,var(--max)); margin:auto; padding-inline:var(--pad); }
.hero-copy { max-width:73rem; }
.hero .display-xl { max-width:9.4ch; }
.hero .lede { max-width:36rem; color:rgba(243,240,232,.76); }
.hero-foot { display:grid; grid-template-columns:1fr auto; align-items:end; gap:2rem; margin-top:clamp(3rem,7vw,7rem); padding-top:1.25rem; border-top:1px solid var(--line); }
.hero-index { color:var(--muted); font-size:.68rem; line-height:1.8; text-transform:uppercase; letter-spacing:.13em; }
.scroll-hint { display:flex; align-items:center; gap:.75rem; color:var(--muted); font-size:.65rem; text-transform:uppercase; letter-spacing:.14em; }
.scroll-hint i { display:grid; place-items:center; width:2.2rem; height:2.2rem; border:1px solid var(--line); border-radius:50%; }

.marquee { overflow:hidden; border-block:1px solid var(--line); background:var(--paper); color:var(--ink); }
.marquee-track { display:flex; width:max-content; padding:.85rem 0; animation:marquee 28s linear infinite; }
.marquee-track span { display:inline-flex; align-items:center; gap:2rem; padding-right:2rem; font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.16em; }
.marquee-track span::after { content:""; width:1.5rem; height:1px; background:var(--cobalt); }
@keyframes marquee { to { transform:translateX(-50%); } }

.intro-grid { display:grid; grid-template-columns:minmax(12rem,.65fr) 2fr; gap:clamp(2rem,8vw,9rem); align-items:start; }
.intro-copy .display-lg { max-width:12ch; }
.manifesto { margin-top:clamp(3rem,7vw,7rem); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.manifesto article { min-height:14rem; padding:1.5rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; justify-content:space-between; }
.manifesto strong { display:block; font-family:var(--display); font-size:clamp(1.2rem,2vw,2.2rem); text-transform:uppercase; letter-spacing:-.05em; overflow-wrap:anywhere; }
.manifesto p { margin:2rem 0 0; max-width:25rem; color:var(--muted); line-height:1.55; }
.manifesto .num { color:var(--acid); font-size:.67rem; letter-spacing:.16em; }

.section-head { display:grid; grid-template-columns:1fr minmax(18rem,.72fr); gap:3rem; align-items:end; margin-bottom:clamp(3rem,6vw,6rem); }
.section-head .lede { margin:0; justify-self:end; }
.worlds { display:grid; gap:1rem; }
.world-card { position:relative; min-height:clamp(32rem,56vw,50rem); overflow:hidden; border:1px solid var(--line); border-radius:1.25rem; background:var(--ink-2); isolation:isolate; }
.world-card::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(9,10,10,.95) 0 37%,rgba(9,10,10,.22) 73%,rgba(9,10,10,.55)); }
.world-copy { width:min(37rem,65%); min-height:inherit; padding:clamp(1.5rem,4vw,4.5rem); display:flex; flex-direction:column; justify-content:space-between; }
.world-num { color:var(--muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.14em; }
.world-copy h3 { margin:1rem 0; font-family:var(--display); font-size:clamp(2.6rem,5.3vw,6.2rem); line-height:.86; letter-spacing:-.07em; text-transform:uppercase; }
.world-copy p { max-width:31rem; color:var(--muted); line-height:1.6; }
.world-link { display:inline-flex; align-items:center; gap:1rem; margin-top:1.5rem; color:var(--paper); font-size:.7rem; font-weight:800; text-transform:uppercase; letter-spacing:.14em; }
.world-link i { width:2.6rem; height:2.6rem; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; transition:background .3s,color .3s,transform .3s; }
.world-link:hover i { color:var(--ink); background:var(--acid); transform:rotate(-35deg); }
.world-visual { position:absolute; inset:0; z-index:-2; }
.realestate-visual { background:radial-gradient(circle at 80% 45%,rgba(202,255,66,.22),transparent 25%),linear-gradient(135deg,#151815,#090a0a 72%); }
.realestate-board { position:absolute; right:3%; top:12%; width:min(55%,42rem); height:76%; padding:1.1rem; transform:perspective(900px) rotateY(-9deg) rotateX(3deg); border:1px solid rgba(243,240,232,.22); border-radius:1rem; background:rgba(20,23,20,.74); backdrop-filter:blur(12px); box-shadow:-30px 30px 80px rgba(0,0,0,.45); }
.mock-top { display:flex; align-items:center; gap:.35rem; padding-bottom:.8rem; border-bottom:1px solid var(--line); }
.mock-top i { width:.4rem;height:.4rem;border-radius:50%;background:var(--paper-2);opacity:.5; }
.mock-columns { height:calc(100% - 1.3rem); padding-top:1rem; display:grid; grid-template-columns:.44fr 1fr; gap:1rem; }
.mock-side { border:1px solid var(--line);border-radius:.6rem;background:rgba(9,10,10,.4); }
.mock-list { display:grid; grid-template-rows:1fr .7fr; gap:1rem; }
.mock-property { position:relative; overflow:hidden; border:1px solid var(--line);border-radius:.6rem;background:linear-gradient(135deg,rgba(202,255,66,.34),rgba(111,121,255,.16)); }
.mock-property::before { content:"";position:absolute;inset:25% 12% 0;border:1px solid rgba(243,240,232,.35);clip-path:polygon(50% 0,100% 32%,100% 100%,0 100%,0 32%);background:rgba(9,10,10,.62); }
.mock-rows { display:grid;grid-template-columns:repeat(3,1fr);gap:1rem; }
.mock-rows i { border:1px solid var(--line);border-radius:.6rem;background:rgba(243,240,232,.06); }
.web-visual { background:radial-gradient(circle at 80% 44%,rgba(111,121,255,.32),transparent 26%),linear-gradient(135deg,#111120,#08090c 72%); }
.web-window { position:absolute; right:4%; top:11%; width:min(56%,43rem); height:78%; border:1px solid rgba(243,240,232,.25); border-radius:1rem; background:#12131d; transform:rotate(3deg); box-shadow:-30px 35px 80px rgba(0,0,0,.5); overflow:hidden; }
.web-canvas { height:100%; display:grid; place-items:center; background:repeating-radial-gradient(circle at 50% 50%,rgba(111,121,255,.16) 0 1px,transparent 1px 24px); }
.web-canvas b { width:55%; aspect-ratio:1; display:grid; place-items:center; border-radius:42% 58% 64% 36%/38% 32% 68% 62%; background:linear-gradient(135deg,var(--cobalt),var(--ember)); filter:saturate(.8); animation:morph 9s ease-in-out infinite; }
.web-canvas b::after { content:"AW"; color:var(--ink); font-family:var(--display); font-size:clamp(3rem,8vw,8rem); letter-spacing:-.1em; }
@keyframes morph { 50% { border-radius:63% 37% 32% 68%/55% 64% 36% 45%; transform:rotate(8deg); } }
.raptor-visual { background:radial-gradient(circle at 79% 45%,rgba(255,107,72,.22),transparent 28%),linear-gradient(135deg,#1b1210,#090a0a 72%); }
.manga-stack { position:absolute; right:4%; top:10%; width:min(55%,42rem); height:80%; }
.manga-page { position:absolute; inset:5% 10% 2% 10%; border:1px solid rgba(243,240,232,.3); background:#ece8dc; box-shadow:-25px 30px 60px rgba(0,0,0,.38); transform:rotate(6deg); }
.manga-page:nth-child(2) { transform:translate(-8%,6%) rotate(-3deg);background:#151515; }
.manga-page:nth-child(3) { transform:translate(-15%,10%) rotate(-9deg);background:var(--paper); padding:8%; display:grid; grid-template-columns:1fr .8fr; grid-template-rows:1fr .7fr; gap:4%; }
.manga-page:nth-child(3) i { border:4px solid var(--ink); background:linear-gradient(135deg,transparent 49%,var(--ink) 50% 52%,transparent 53%); }
.manga-page:nth-child(3) i:first-child { grid-row:span 2; background:radial-gradient(circle at 50% 45%,var(--ember) 0 7%,transparent 8%),repeating-linear-gradient(42deg,transparent 0 10px,rgba(9,10,10,.2) 11px 12px); }

.system-map { position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:4rem; border-block:1px solid var(--line); }
.system-map::before { content:""; position:absolute; left:0; top:-1px; height:1px; width:var(--flow,0%); background:var(--acid); transition:width 1.3s var(--ease); }
.system-step { min-height:21rem; padding:1.5rem; border-right:1px solid var(--line); display:flex; flex-direction:column; justify-content:space-between; }
.system-step:first-child { border-left:1px solid var(--line); }
.system-step small { color:var(--acid); font-size:.67rem; letter-spacing:.16em; }
.system-step h3 { margin:auto 0 1rem; font-family:var(--display); font-size:clamp(1.5rem,2.7vw,3rem); line-height:.9; letter-spacing:-.05em; text-transform:uppercase; }
.system-step p { margin:0; color:var(--muted); line-height:1.55; }
.system-arrow { color:var(--muted); font-size:1.6rem; }

.cap-grid { display:grid; grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.cap-card { min-height:30rem; padding:clamp(1.5rem,3vw,3rem); border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; justify-content:space-between; transition:background .3s; }
.cap-card:hover { background:rgba(243,240,232,.035); }
.cap-card:first-child { background:var(--acid); color:var(--ink); }
.cap-card:first-child p { color:rgba(9,10,10,.65); }
.cap-icon { width:4.5rem; height:4.5rem; color:currentColor; }
.cap-card h3 { margin:auto 0 1.2rem; font-family:var(--display); font-size:clamp(1.8rem,3.4vw,3.6rem); line-height:.92; text-transform:uppercase; letter-spacing:-.06em; }
.cap-card p { margin:0; color:var(--muted); line-height:1.6; }
.manifesto article, .system-step, .cap-card, .feature-list article { min-width:0; }

.app-showcase { padding:clamp(5rem,10vw,10rem) 0; background:linear-gradient(145deg,rgba(111,121,255,.08),transparent 45%); }
.app-showcase-grid { display:grid; grid-template-columns:minmax(0,.82fr) minmax(24rem,1.18fr); gap:clamp(2.5rem,8vw,8rem); align-items:center; }
.app-showcase-copy .display-lg { max-width:10ch; }
.app-showcase-copy .lede { max-width:38rem; color:var(--muted); }
.app-console { position:relative; overflow:hidden; border:1px solid rgba(243,240,232,.22); border-radius:1rem; background:linear-gradient(160deg,#171a1a,#0d0f0f); box-shadow:0 2rem 7rem rgba(0,0,0,.35); }
.app-console::after { content:""; position:absolute; width:17rem; aspect-ratio:1; right:-6rem; bottom:-8rem; border-radius:50%; background:radial-gradient(circle,var(--cobalt),transparent 68%); opacity:.28; pointer-events:none; }
.app-console-bar { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.2rem; border-bottom:1px solid var(--line); color:var(--muted); font-size:.66rem; letter-spacing:.08em; }
.app-console-bar span { display:flex; align-items:center; gap:.6rem; }
.app-console-bar i { width:.5rem; height:.5rem; border-radius:50%; background:var(--acid); box-shadow:0 0 1rem rgba(202,255,66,.7); }
.app-console-bar b { padding:.38rem .55rem; border:1px solid rgba(202,255,66,.3); border-radius:999px; color:var(--acid); font-size:.58rem; text-transform:uppercase; letter-spacing:.14em; }
.app-console-body { min-height:27rem; padding:clamp(2rem,5vw,4.5rem); display:flex; flex-direction:column; justify-content:center; }
.app-console-mark { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:.9rem; }
.app-console-mark img { grid-row:span 2; }
.app-console-mark strong { font:900 clamp(2rem,4vw,4rem)/.8 var(--display); text-transform:uppercase; letter-spacing:-.07em; }
.app-console-mark small { color:var(--muted); text-transform:uppercase; letter-spacing:.14em; }
.app-console-lines { display:grid; gap:.65rem; margin:2.5rem 0 1.5rem; }
.app-console-lines i { display:block; height:.75rem; border-radius:999px; background:rgba(243,240,232,.09); }
.app-console-lines i:nth-child(2) { width:76%; }
.app-console-lines i:nth-child(3) { width:52%; }
.app-console-button { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.1rem; border-radius:.65rem; background:var(--acid); color:var(--ink); font-size:.7rem; font-weight:900; text-transform:uppercase; letter-spacing:.1em; }
.app-console-foot { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:1rem 2rem; padding:1rem 1.2rem; border-top:1px solid var(--line); color:var(--muted); font-size:.58rem; text-transform:uppercase; letter-spacing:.12em; }

.quote-block { position:relative; text-align:center; padding:clamp(7rem,15vw,14rem) var(--pad); overflow:hidden; }
.quote-block::before { content:""; position:absolute; width:32rem; aspect-ratio:1; left:50%; top:50%; transform:translate(-50%,-50%); border:1px solid var(--line); border-radius:50%; box-shadow:0 0 0 8rem rgba(243,240,232,.014),0 0 0 16rem rgba(243,240,232,.01); }
.quote-block p { position:relative; max-width:17ch; margin:auto; font-family:var(--serif); font-size:clamp(2.6rem,6vw,6.8rem); font-style:italic; line-height:.96; letter-spacing:-.06em; text-wrap:balance; }
.quote-block em { color:var(--acid); }

.cta-panel { position:relative; min-height:42rem; padding:clamp(2rem,5vw,5rem); display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; border-radius:1.2rem; background:var(--paper); color:var(--ink); }
.cta-panel::after { content:""; position:absolute; width:44rem; aspect-ratio:1; right:-12rem; bottom:-24rem; border-radius:50%; background:var(--cobalt); box-shadow:0 0 0 5rem var(--acid),0 0 0 10rem var(--ember); opacity:.95; }
.cta-panel > * { position:relative; z-index:1; }
.cta-panel .eyebrow { color:rgba(9,10,10,.6); }
.cta-panel .display-lg { max-width:9ch; }
.cta-panel .eyebrow::before { background:var(--ink); box-shadow:none; }
.cta-panel .button { border-color:rgba(9,10,10,.25); color:var(--ink); }
.cta-panel .button::before { background:var(--ink); }
.cta-panel .button:hover { color:var(--paper); }
.cta-meta { display:flex; flex-wrap:wrap; gap:2rem; font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.13em; }

.page-hero { padding:clamp(9rem,16vw,15rem) 0 clamp(5rem,10vw,10rem); border-bottom:1px solid var(--line); }
.page-hero .display-xl { max-width:11ch; }
.page-hero-grid { display:grid; grid-template-columns:1.45fr .55fr; gap:4rem; align-items:end; }
.page-stamp { justify-self:end; width:12rem; aspect-ratio:1; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; color:var(--muted); font-size:.65rem; text-align:center; text-transform:uppercase; letter-spacing:.14em; animation:spin 25s linear infinite; }

.product-detail { display:grid; grid-template-columns:.58fr 1.42fr; gap:clamp(2rem,8vw,9rem); padding:clamp(5rem,10vw,9rem) 0; border-bottom:1px solid var(--line); }
.product-kicker { position:sticky; top:7rem; align-self:start; }
.product-kicker .num { color:var(--acid); font-size:.68rem; letter-spacing:.16em; }
.product-kicker h2 { margin:1rem 0; font:900 clamp(2.4rem,4.2vw,5rem)/.88 var(--display); text-transform:uppercase; letter-spacing:-.065em; }
.product-kicker a { display:inline-flex; align-items:center; gap:.8rem; margin-top:1rem; color:var(--muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.12em; }
.product-body > p { margin:0 0 3rem; max-width:50rem; font-size:clamp(1.2rem,2vw,2rem); line-height:1.45; color:var(--paper-2); }
.feature-list { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.feature-list article { min-height:13rem; padding:1.4rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.feature-list small { color:var(--acid); letter-spacing:.14em; }
.feature-list h3 { margin:3.5rem 0 .6rem; font-size:1rem; text-transform:uppercase; letter-spacing:.04em; }
.feature-list p { margin:0; color:var(--muted); font-size:.9rem; line-height:1.55; }

.studio-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:1rem; }
.studio-card { border:1px solid var(--line); border-radius:1rem; padding:clamp(1.5rem,3vw,3rem); min-height:25rem; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; }
.studio-card h2, .studio-card h3 { margin:0; font:900 clamp(2rem,4vw,4.6rem)/.9 var(--display); text-transform:uppercase; letter-spacing:-.06em; }
.studio-card p { margin:2rem 0 0; max-width:34rem; color:var(--muted); line-height:1.65; }
.studio-card.large { grid-column:span 7; background:var(--paper); color:var(--ink); }
.studio-card.large p { color:rgba(9,10,10,.64); }
.studio-card.medium { grid-column:span 5; background:linear-gradient(145deg,rgba(111,121,255,.3),transparent); }
.studio-card.wide { grid-column:span 12; min-height:20rem; background:var(--acid); color:var(--ink); }
.studio-card.wide p { color:rgba(9,10,10,.64); }
.studio-tag { align-self:flex-start; padding:.55rem .75rem; border:1px solid currentColor; border-radius:999px; font-size:.65rem; text-transform:uppercase; letter-spacing:.13em; opacity:.7; }
.principles { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.principle { padding:2rem 0; border-top:1px solid var(--line); }
.principle span { color:var(--acid); font-size:.68rem; }
.principle h3 { margin:3rem 0 .8rem; font:900 clamp(1.6rem,2.7vw,3rem)/.92 var(--display); text-transform:uppercase; letter-spacing:-.05em; }
.principle p { color:var(--muted); line-height:1.6; }
.process-sequence { margin:clamp(2.5rem,5vw,4.5rem) 0 0; padding:0; border-top:1px solid var(--line); list-style:none; }
.process-sequence li { display:grid; grid-template-columns:3rem minmax(7rem,.32fr) 1fr; gap:clamp(1rem,3vw,2.5rem); align-items:baseline; padding:1.35rem 0; border-bottom:1px solid var(--line); }
.process-sequence span { color:var(--acid); font-size:.62rem; letter-spacing:.14em; }
.process-sequence strong { font:900 clamp(1.1rem,2vw,1.75rem)/1 var(--display); text-transform:uppercase; letter-spacing:-.04em; }
.process-sequence p { margin:0; color:var(--muted); line-height:1.55; }

.contact-layout { display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(3rem,9vw,10rem); align-items:start; }
.contact-link { display:block; width:max-content; max-width:100%; margin-top:2.5rem; padding-bottom:.35rem; border-bottom:2px solid var(--acid); font:900 clamp(1.4rem,3vw,3.2rem)/1 var(--display); letter-spacing:-.05em; overflow-wrap:anywhere; }
.contact-aside { border:1px solid var(--line); border-radius:1rem; padding:2rem; }
.contact-aside dl { margin:0; }
.contact-aside div { padding:1.2rem 0; border-bottom:1px solid var(--line); }
.contact-aside div:last-child { border:0; }
.contact-aside dt { margin-bottom:.5rem; color:var(--muted); font-size:.65rem; text-transform:uppercase; letter-spacing:.14em; }
.contact-aside dd { margin:0; line-height:1.5; }

.legal { max-width:54rem; }
.legal h2 { margin:4rem 0 1rem; font:900 clamp(1.6rem,3vw,2.6rem)/1 var(--display); text-transform:uppercase; letter-spacing:-.04em; }
.legal p, .legal li { color:var(--muted); line-height:1.75; }
.legal a { color:var(--paper); text-decoration:underline; text-decoration-color:var(--acid); text-underline-offset:.2em; }

.security-hero .display-xl { max-width:9ch; }
.assurance-head { display:grid; grid-template-columns:1fr minmax(20rem,.72fr); gap:3rem; align-items:end; margin-bottom:clamp(3rem,7vw,6rem); }
.assurance-head .display-lg { max-width:10ch; }
.assurance-head .lede { margin:0; justify-self:end; }
.launch-ledger { border-top:1px solid var(--line); }
.launch-row { display:grid; grid-template-columns:4rem minmax(15rem,.55fr) minmax(0,1fr); gap:clamp(1.25rem,4vw,4rem); align-items:start; padding:clamp(1.7rem,3vw,2.8rem) 0; border-bottom:1px solid var(--line); }
.launch-index { padding-top:.2rem; color:var(--acid); font-size:.68rem; letter-spacing:.16em; }
.launch-row-open .launch-index { color:var(--ember); }
.launch-label h3 { margin:1rem 0 0; font:900 clamp(1.35rem,2.4vw,2.6rem)/.95 var(--display); text-transform:uppercase; letter-spacing:-.05em; }
.launch-state { display:inline-flex; padding:.38rem .55rem; border:1px solid currentColor; border-radius:999px; font-size:.58rem; font-weight:800; text-transform:uppercase; letter-spacing:.13em; }
.state-verified { color:var(--acid); }
.state-configured { color:var(--cobalt); }
.state-open { color:var(--ember); }
.launch-row > p { margin:0; color:var(--muted); line-height:1.72; }
.launch-row code { padding:.12rem .3rem; border:1px solid var(--line); border-radius:.25rem; color:var(--paper); font-size:.86em; }
.assurance-note { display:grid; grid-template-columns:4rem 1fr; gap:clamp(1.25rem,4vw,4rem); margin-top:2rem; padding:1.5rem; border-left:3px solid var(--ember); background:rgba(255,107,72,.055); }
.assurance-note span { color:var(--ember); font-size:.62rem; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.assurance-note p { max-width:70rem; margin:0; color:var(--muted); line-height:1.65; }
.assurance-contact { display:grid; grid-template-columns:minmax(0,.9fr) minmax(22rem,1.1fr); gap:clamp(3rem,10vw,11rem); align-items:start; }
.assurance-contact .display-md { max-width:12ch; }
.assurance-contact > div:last-child > p:not(.eyebrow) { color:var(--muted); line-height:1.75; }
.assurance-contact > div:last-child > p a { color:var(--paper); text-decoration:underline; text-decoration-color:var(--acid); text-underline-offset:.2em; }

.not-found { min-height:100svh; display:grid; place-items:center; text-align:center; padding:8rem var(--pad) 3rem; }
.not-found-code { margin:0; font:900 clamp(8rem,30vw,30rem)/.7 var(--display); letter-spacing:-.12em; color:transparent; -webkit-text-stroke:1px var(--line); }
.not-found h1 { margin:3rem 0 1rem; font:900 clamp(2.2rem,5vw,5rem)/.9 var(--display); text-transform:uppercase; letter-spacing:-.06em; }
.button-row-centered { justify-content:center; }

.site-footer { padding:4rem 0 1.5rem; }
.footer-top { display:grid; grid-template-columns:1fr auto; gap:3rem; align-items:start; padding-bottom:4rem; }
.footer-brand { display:block; min-width:0; max-width:100%; font:900 clamp(3rem,9vw,9rem)/.8 var(--display); text-transform:uppercase; letter-spacing:-.085em; }
.footer-brand span { color:var(--acid); }
.footer-links { display:grid; grid-template-columns:repeat(2,minmax(8rem,1fr)); gap:.8rem 3rem; font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; }
.footer-links a { color:var(--muted); }
.footer-links a:hover { color:var(--paper); }
.footer-bottom { padding-top:1.2rem; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:2rem; color:var(--muted); font-size:.65rem; text-transform:uppercase; letter-spacing:.11em; }

[data-reveal] { opacity:0; transform:translateY(28px); transition:opacity .8s var(--ease),transform .8s var(--ease); }
[data-reveal].visible { opacity:1; transform:none; }

@media (max-width: 900px) {
  .desktop-nav { display:none; }
  .menu-toggle { display:block; }
  .mobile-menu.open { display:block; }
  .hero { min-height:56rem; }
  .app-showcase-grid { grid-template-columns:1fr; }
  .hero-media { inset:0 0 20% 10%; opacity:.78; }
  .hero::before { background:linear-gradient(90deg,var(--ink),rgba(9,10,10,.5)),linear-gradient(0deg,var(--ink) 0 22%,transparent 65%); }
  .hero-content { padding-top:18rem; }
  .intro-grid, .section-head, .page-hero-grid, .product-detail, .contact-layout, .assurance-head, .assurance-contact { grid-template-columns:1fr; }
  .section-head .lede { justify-self:start; }
  .assurance-head .lede { justify-self:start; }
  .manifesto { grid-template-columns:1fr; }
  .manifesto article { min-height:11rem; }
  .world-card { min-height:45rem; }
  .world-card::after { background:linear-gradient(0deg,var(--ink) 0 44%,rgba(9,10,10,.2) 84%); }
  .world-copy { width:100%; min-height:inherit; justify-content:flex-end; padding-top:18rem; }
  .world-copy .world-num { margin-bottom:auto; }
  .realestate-board, .web-window, .manga-stack { width:82%; height:47%; top:5%; right:5%; }
  .system-map { grid-template-columns:repeat(2,1fr); }
  .system-step:nth-child(3) { border-left:1px solid var(--line); }
  .cap-grid { grid-template-columns:1fr; }
  .cap-card { min-height:22rem; }
  .page-stamp { display:none; }
  .product-kicker { position:static; }
  .studio-card.large, .studio-card.medium { grid-column:span 12; }
  .principles { grid-template-columns:1fr; }
  .process-sequence li { grid-template-columns:2.5rem minmax(6rem,.3fr) 1fr; }
  .launch-row { grid-template-columns:3rem 1fr; }
  .launch-row > p { grid-column:2; }
  .footer-top { grid-template-columns:1fr; }
}

@media (max-width: 600px) {
  .hero { min-height:52rem; padding-bottom:1.4rem; }
  .hero-media { inset:0 0 38% 0; background-position:64% center; }
  .hero-content { padding-top:15rem; }
  .hero-foot { grid-template-columns:1fr; margin-top:3rem; }
  .scroll-hint { display:none; }
  .display-xl { font-size:clamp(3.25rem,17vw,5rem); }
  .display-lg { font-size:clamp(2.8rem,14.5vw,4.4rem); }
  .system-map, .feature-list { grid-template-columns:1fr; }
  .system-step { min-height:15rem; border-left:1px solid var(--line); }
  .world-card { min-height:42rem; }
  .world-copy { padding-top:16rem; }
  .mock-columns { grid-template-columns:1fr; }
  .mock-side { display:none; }
  .manga-page:nth-child(3) { padding:5%; }
  .cta-panel { min-height:38rem; }
  .cta-panel::after { width:25rem; right:-12rem; bottom:-10rem; box-shadow:0 0 0 3rem var(--acid),0 0 0 6rem var(--ember); }
  .footer-brand { font-size:clamp(3rem,18vw,5rem); }
  .footer-bottom { flex-direction:column; }
  .footer-links { grid-template-columns:1fr 1fr; gap:1rem; }
  .process-sequence li { grid-template-columns:2rem 1fr; }
  .process-sequence p { grid-column:2; }
  .launch-row { grid-template-columns:2.2rem 1fr; gap:1rem; }
  .assurance-note { grid-template-columns:1fr; gap:.8rem; }
}

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