@font-face{font-family:Inter;src:url('/fonts/inter-latin-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
.studio-page{--bg:#050505;--surface:#080808;--text:#fff;--muted:#858585;--line:#ffffff1a;--accent:#fff;color-scheme:dark;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}
.studio-page .shell{width:100%;max-width:1600px;padding-inline:32px;margin-inline:auto}
.studio-page main{position:relative;isolation:isolate}
.studio-page section[id]{scroll-margin-top:96px}
.studio-backdrop{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 75% 35%,#102027 0%,#070c12 45%,#040609 80%)}
.studio-page .hero-canvas{z-index:0;opacity:1}
.studio-page .hero-shade{z-index:1;background:linear-gradient(180deg,#0002,transparent 40%,#0005),linear-gradient(90deg,#03060980,transparent 70%)}
.studio-page .site-header{position:fixed;inset:0 0 auto;z-index:30;background:transparent;border:0;border-bottom:1px solid transparent;transition:background .3s,border-color .3s}
.studio-page.is-scrolled .site-header{background:#050505d9;border-bottom-color:#ffffff0f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.studio-page .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);max-width:1200px;min-height:96px;gap:24px}
.studio-page .brand{justify-self:start;display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:400;letter-spacing:-.035em}
.studio-page .brand strong{font-weight:650}
.studio-page .brand-mark{width:26px;height:26px;overflow:visible}
.studio-page .brand-branch{fill:none;stroke:#a3e9d8;stroke-width:1.2;stroke-linecap:round;opacity:.5;transition:opacity .3s}
.studio-page .brand:hover .brand-branch{opacity:.9}
.studio-page .brand-node{fill:#a5a0f5;opacity:.35;animation:brand-fire 3.2s ease-in-out infinite}
.studio-page .brand-node:nth-of-type(2){animation-delay:.8s}.studio-page .brand-node:nth-of-type(3){animation-delay:1.6s}.studio-page .brand-node:nth-of-type(4){animation-delay:2.4s}
.studio-page .brand-core{fill:#a3e9d8;filter:drop-shadow(0 0 4px #a3e9d8);transform-box:fill-box;transform-origin:center;animation:brand-pulse 3.2s ease-in-out infinite}
@keyframes brand-fire{0%,30%,100%{opacity:.35}8%{opacity:1;fill:#e5fff9}}
@keyframes brand-pulse{0%,100%{transform:scale(1)}5%{transform:scale(1.3)}}
.studio-page .header-nav{position:relative;justify-self:center;gap:2px;padding:5px;border:1px solid #ffffff14;border-radius:999px;background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.studio-page .header-nav a{position:relative;z-index:1;display:inline-flex;align-items:baseline;gap:8px;padding:9px 16px;border-radius:999px;font-size:13px;font-weight:400;color:#ffffff99;transition:color .25s}
.studio-page .header-nav a:hover,.studio-page .header-nav a[aria-current]{color:#fff}
.studio-page .nav-index{font:500 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;color:#a3e9d8;opacity:.55;transition:opacity .25s}
.studio-page .header-nav a:hover .nav-index,.studio-page .header-nav a[aria-current] .nav-index{opacity:1}
.studio-page .nav-indicator{position:absolute;z-index:0;top:5px;bottom:5px;left:0;width:var(--indicator-w,0);transform:translateX(var(--indicator-x,0));border-radius:999px;background:linear-gradient(90deg,#a3e9d81f,#a5a0f51f);box-shadow:inset 0 0 0 1px #a3e9d840,0 0 18px #a3e9d826;opacity:0;transition:transform .45s cubic-bezier(.7,0,.2,1),width .45s cubic-bezier(.7,0,.2,1),opacity .3s}
.studio-page .header-nav.has-active .nav-indicator{opacity:1}
.studio-page a:focus-visible{outline-color:#a3e9d8}
.studio-page .nav-item{display:inline-flex}
.studio-page .nav-caret{display:block;width:9px;height:6px;margin-left:2px;align-self:center;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.6;transition:transform .3s,opacity .3s}
.studio-page .nav-menu{display:block;position:absolute;z-index:5;top:calc(100% + 12px);right:0;width:340px;padding:10px;border:1px solid #ffffff17;border-radius:20px;background:#080c0ffa;box-shadow:0 30px 60px -20px #000c,0 0 0 1px #a3e9d80d;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s,transform .25s,visibility 0s .25s}
.studio-page .nav-menu:before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.studio-page .nav-item:focus-within .nav-menu{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .25s,visibility 0s}
.studio-page .nav-item:focus-within .nav-caret{transform:rotate(180deg);opacity:1}
@media(hover:hover){.studio-page .nav-item:hover .nav-menu{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .25s,visibility 0s}.studio-page .nav-item:hover .nav-caret{transform:rotate(180deg);opacity:1}}
.studio-page .nav-menu-label{margin:4px 10px 8px;font:500 10px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:#a3e9d8b3}
.studio-page .header-nav .nav-menu .nav-product{display:flex;align-items:center;gap:14px;padding:10px;border-radius:14px;color:#fff;font-size:14px;transition:background .2s}
.studio-page .header-nav .nav-menu a.nav-product:hover,.studio-page .header-nav .nav-menu a.nav-product:focus-visible{background:#ffffff0b}
.studio-page .nav-product img{flex:0 0 44px;width:44px;height:44px;border-radius:12px;box-shadow:0 0 0 1px #ffffff1a}
.studio-page .nav-product-text{display:grid;gap:3px;min-width:0}
.studio-page .nav-product-text strong{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;letter-spacing:-.01em}
.studio-page .nav-product-text em{padding:4px 7px;border:1px solid #a3e9d840;border-radius:99px;font:500 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;color:#bbe6d9}
.studio-page .nav-product-text>span{font-size:12px;line-height:1.4;color:#ffffff80}
.studio-page .nav-product-arrow{margin-left:auto;color:#a3e9d8;font-size:15px}

.studio-page .header-nav .nav-menu .nav-menu-all{display:flex;justify-content:space-between;margin-top:6px;padding:12px 10px 4px;border-top:1px solid #ffffff0f;border-radius:0;font:500 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;color:#ffffff99}
.studio-page .header-nav .nav-menu .nav-menu-all:hover{color:#fff}
@media(prefers-reduced-motion:reduce){.studio-page .nav-menu,.studio-page .nav-caret{transition:none}}
.studio-page .header-contact{justify-self:end;display:inline-flex;align-items:center;gap:10px;padding:11px 18px;border:1px solid #ffffff3b;border-radius:999px;background:#ffffff10;color:#fff;font-size:12px;font-weight:500;white-space:nowrap;backdrop-filter:blur(8px);transition:background .25s,border-color .25s}
.studio-page .header-contact:hover{background:#a3e9d814;border-color:#a3e9d880}
.studio-page .contact-dot{width:6px;height:6px;border-radius:50%;background:#a3e9d8;animation:contact-ping 2.4s ease-out infinite}
@keyframes contact-ping{0%{box-shadow:0 0 0 0 #a3e9d88c}70%,100%{box-shadow:0 0 0 7px #a3e9d800}}
.studio-page .header-progress{position:absolute;left:0;bottom:-1px;width:100%;height:1px;transform-origin:left;transform:scaleX(var(--scroll-progress,0));background:linear-gradient(90deg,#a3e9d8,#a5a0f5);box-shadow:0 0 8px #a3e9d880;opacity:0;transition:opacity .3s}
.studio-page.is-scrolled .header-progress{opacity:1}
@media(max-width:720px){.studio-page .brand-mark{width:22px;height:22px}.studio-page .header-nav{padding:3px}.studio-page .header-nav a{padding:7px 10px;gap:0}.studio-page .nav-index{display:none}.studio-page .nav-indicator{top:3px;bottom:3px}}
@media(max-width:560px){.studio-page .header-inner{grid-template-columns:1fr auto}.studio-page .header-nav{display:none}}
@media(prefers-reduced-motion:reduce){.studio-page .brand-node,.studio-page .brand-core,.studio-page .contact-dot{animation:none}.studio-page .nav-indicator{transition:none}}
.studio-page .studio-hero{min-height:100svh;height:auto;display:flex;align-items:center;background:transparent;overflow:visible;isolation:auto}
.studio-page .hero-content{display:block;min-height:0;padding-block:150px;position:relative;transform:translateY(-28px)}
.studio-page .studio-hero h1{max-width:none;margin:0;color:#fff;font-size:clamp(3rem,8vw,9rem);font-weight:100;line-height:.8;letter-spacing:-.05em;word-spacing:normal;text-transform:uppercase}
.studio-page .studio-hero h1>span,.studio-page .studio-hero h1>strong{display:block;white-space:nowrap;line-height:.8}
.studio-page .studio-hero h1 strong{font-weight:700;margin:0}
.studio-page .hero-details{margin-top:64px;padding-left:8px;display:flex;flex-direction:column;align-items:flex-start;gap:48px}
.studio-page .button{border-radius:0;min-height:0;padding:16px 32px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10px;line-height:1.5;font-weight:700;letter-spacing:.2em;text-transform:uppercase;gap:16px}
.studio-page .button span{margin:0;font-size:16px;line-height:1}
.studio-page .button-outline{background:transparent;border:1px solid #fff3;color:#fff}
.studio-page .button-outline:hover{border-color:#fff9;background:#ffffff0a;transform:none}
.studio-page .button-light{background:#fff;color:#050505}
.studio-page .button-light:hover{background:#ddd;transform:none}
.studio-page .eyebrow{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10px;font-weight:400;letter-spacing:.2em;line-height:1.5;text-transform:uppercase;color:#ffffff80;gap:20px}
.studio-page .eyebrow-line{width:280px;max-width:22vw;height:1px;opacity:.45}
.section-marker{display:inline-flex;align-items:center;gap:10px;margin:0;padding:8px 14px;border:1px solid #a3e9d82b;border-radius:999px;background:#a3e9d808;color:#b9d8d1;font-size:12px;font-weight:500;line-height:1.4;letter-spacing:.02em}
.section-marker::before{content:"";width:5px;height:5px;border-radius:50%;background:#a3e9d8}
.manifesto-section{padding-block:160px;min-height:90svh;display:flex;align-items:center}
.manifesto-topline{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:48px}
.manifesto-section h2{max-width:1280px;font-size:clamp(2rem,4.4vw,5rem);font-weight:300;letter-spacing:-.04em;line-height:1.08;color:#ffffffd9;margin:0}
.manifesto-section h2 strong{font-weight:600;color:#fff}
.studio-page .section{padding-block:128px;border-top:1px solid #ffffff0d;background:#070707ee}
.studio-page .section-intro{display:block;margin-bottom:40px}
.studio-page .section-intro h2{font-size:clamp(3rem,5.5vw,6rem);font-weight:100;letter-spacing:-.05em;line-height:.9;text-transform:uppercase;margin:32px 0 0}
.studio-page .section-intro h2 span,.studio-page .section-intro h2 strong{display:block}
.studio-page .section-intro h2 strong{font-weight:700}
.studio-page .contact-section{background:linear-gradient(90deg,#080d10cc 0%,#080d10d9 50%,#080d10e0 100%);color:#fff;padding-block:112px;border-top:1px solid #ffffff14}
.studio-page .contact-inner{display:flex;align-items:center;justify-content:space-between;gap:48px}
.studio-page .contact-inner h2{font-size:clamp(3rem,5.5vw,6rem);font-weight:300;line-height:.98;letter-spacing:-.045em;margin:0}
.studio-page .contact-inner h2 span,.studio-page .contact-inner h2 strong{display:block}
.studio-page .contact-inner h2 strong{font-weight:600}
.studio-page .contact-inner p{font-size:16px;line-height:1.6;letter-spacing:0;color:#888;margin:0}
.studio-page .contact-inner .button{flex-shrink:0}
.studio-page .site-footer{position:relative;background:#050505f2;color:#fff;border-top:1px solid #ffffff1a}
.studio-footer-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr 1fr;gap:48px;padding-block:96px}
.studio-footer-grid .footer-label{font:400 10px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.15em;color:#666;margin:0 0 32px}
.studio-footer-grid a{display:block;font:400 12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.05em;color:#aaa;margin-bottom:16px}
.studio-footer-grid a:hover{color:#fff}
.studio-footer-grid .footer-brand{font-family:Inter,Arial,sans-serif;font-weight:600;font-size:26px;letter-spacing:-.04em;color:#fff}
.footer-statement{font-size:36px;font-weight:200;line-height:1.05;letter-spacing:-.04em;margin:28px 0 24px}
.footer-statement strong{font-weight:500}
.footer-description{font-size:13px;color:#777;max-width:280px;line-height:1.7;margin:0}
.footer-copyright{font:400 11px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;color:#aaa;margin:0 0 20px}
@media(min-width:1800px){.studio-page .hero-content{max-width:1728px}}
@media(max-width:1050px){.studio-footer-grid{gap:28px}}
@media(max-width:720px){.studio-page .shell{padding-inline:20px}.studio-page .header-inner{min-height:76px;gap:8px}.studio-page .brand{font-size:17px}.studio-page .header-nav{gap:10px}.studio-page .header-nav>a:not(.header-link){display:inline-flex}.studio-page .header-nav a{font-size:11px}.studio-page .header-contact{gap:8px;padding:9px 12px;font-size:10px}.studio-page .studio-hero{min-height:100svh}.studio-page .hero-content{padding-block:140px 110px;transform:none}.studio-page .studio-hero h1{font-size:clamp(24px,7.8vw,56px)}.studio-page .hero-details{margin-top:40px;padding-left:2px;gap:32px}.studio-page .button{font-size:9px;padding:14px 22px}.manifesto-section{min-height:auto;padding-block:100px}.manifesto-topline{margin-bottom:36px}.manifesto-section h2{font-size:clamp(30px,7.2vw,50px);line-height:1.1}.studio-page .eyebrow{font-size:9px}.studio-page .eyebrow-line{width:100px}.studio-page .section{padding-block:80px}.studio-page .section-intro h2{font-size:clamp(42px,9vw,64px);margin-top:26px}.studio-page .contact-section{padding-block:80px;background:#080d10d9}.studio-page .contact-inner{align-items:flex-start;flex-direction:column;gap:36px}.studio-page .contact-inner h2{font-size:clamp(42px,9vw,64px)}.studio-page .contact-inner p{font-size:14px}.studio-footer-grid{grid-template-columns:1fr 1fr;gap:48px 24px;padding-block:64px}.studio-footer-grid .footer-label{font-size:9px;margin-bottom:24px}.studio-footer-grid a{font-size:10px}.footer-statement{font-size:28px}.footer-description{font-size:12px}}
@media(prefers-reduced-motion:reduce){.studio-page .site-header{transition:none}}

/* The journey follows the user's scroll; without scripting, every chapter is visible. */
.studio-page .process-section { --roadmap-top: 96px; background: linear-gradient(90deg, #080d10cc 0%, #080d10d9 50%, #080d10e0 100%); padding-block: 100px; }
.roadmap-shell { display: grid; grid-template-columns: .85fr 1.15fr; column-gap: 72px; row-gap: 36px; align-items: center; }
.roadmap-intro h2 { font-size: clamp(42px, 4.5vw, 72px); font-weight: 300; line-height: 1.04; letter-spacing: -.055em; margin: 30px 0 0; }
.roadmap-intro h2 span { color: #a3e9d8; }
.roadmap-map { grid-column: 2; grid-row: 1 / 3; min-width: 0; position: relative; padding: 30px 0; }
.roadmap-map:before { content: ''; position: absolute; inset: 15% 5%; background: radial-gradient(ellipse, #a3e9d807, transparent 70%); pointer-events: none; }
.roadmap-map-meta, .roadmap-map-footer { display: flex; justify-content: space-between; align-items: center; gap: 20px; font: 400 9px/1.5 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .13em; color: #7c9296; }
.roadmap-counter { color: #a3e9d8; white-space: nowrap; }
.roadmap-svg { width: 100%; height: auto; overflow: visible; margin-block: 26px; }
.roadmap-route-base { stroke: #33474c; stroke-width: 1.5; stroke-dasharray: 3 8; }
.roadmap-route { stroke: url(#route-color); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 0; filter: drop-shadow(0 0 6px #a3e9d840); }
.landmark-halo { fill: #a3e9d80c; opacity: 0; transition: opacity .3s; }
.landmark-ring { fill: #080d10; stroke: #405559; stroke-width: 1; transition: stroke .3s; }
.landmark-core { fill: #536a70; transition: fill .3s; }
.roadmap-landmark text { fill: #678087; font: 400 12px ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: 1px; transition: fill .3s; }
.roadmap-landmark .landmark-name { font-family: Inter, Arial, sans-serif; font-size: 16px; letter-spacing: -.3px; }
.roadmap-landmark.is-current .landmark-halo { opacity: 1; }
.roadmap-landmark.is-current .landmark-ring, .roadmap-landmark.is-past .landmark-ring { stroke: #a3e9d8; }
.roadmap-landmark.is-current .landmark-core, .roadmap-landmark.is-past .landmark-core { fill: #a3e9d8; }
.roadmap-landmark.is-current text { fill: #dcfff6; }
.roadmap-traveller { fill: #e8fff9; filter: drop-shadow(0 0 8px #a3e9d8); }
.studio-page:not(.roadmap-ready) .roadmap-traveller { display: none; }
.roadmap-stories { grid-column: 1; list-style: none; margin: 0; padding: 0; }
.roadmap-story { padding-block: 20px; scroll-margin-top: 120px; }
.roadmap-chapter { color: #a3e9d8; text-transform: uppercase; font: 400 10px/1.5 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .16em; margin: 0 0 18px; }
.roadmap-story h3 { font-size: clamp(32px, 3.3vw, 48px); font-weight: 500; letter-spacing: -.05em; line-height: 1.1; margin: 0 0 18px; }
.roadmap-copy { max-width: 370px; margin: 0; font-size: 16px; line-height: 1.7; color: #9aa8ad; }
.roadmap-stops { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; padding-top: 20px; }
.roadmap-stops a { display: flex; align-items: center; gap: 12px; min-height: 48px; padding-top: 18px; border-top: 1px solid #ffffff17; color: #748187; font-size: 12px; transition: border-color .25s, color .25s; }
.roadmap-stops a:hover, .roadmap-stops a[aria-current] { color: #d9fff4; border-color: #a3e9d8; }
.roadmap-stops a.is-past { border-color: #a3e9d860; }
.stop-dot { width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.roadmap-stops a[aria-current] .stop-dot { box-shadow: 0 0 12px #a3e9d8; }
.roadmap-scroll-hint { display: none; }
.roadmap-ready .roadmap-scroll-hint { display: block; }
.studio-page.roadmap-ready .process-section { min-height: 310svh; padding-block: 0; }
.roadmap-ready .roadmap-viewport { position: sticky; top: var(--roadmap-top); min-height: calc(100svh - var(--roadmap-top)); display: flex; align-items: center; padding-block: 48px; }
.roadmap-ready .roadmap-stories { min-height: 220px; }
.roadmap-ready .roadmap-story { display: none; }
.roadmap-ready .roadmap-story.is-current { display: block; animation: chapter-arrives .45s ease both; }
@keyframes chapter-arrives { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

/* Product objects, each with its own visual identity. */
.studio-page .app-section { background: #06090d59; }
.products-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 56px; }
.products-heading h2 { font-size: clamp(44px, 5vw, 80px); font-weight: 300; line-height: 1.03; letter-spacing: -.055em; margin: 30px 0 0; }
.products-heading h2 span { font-weight: 600; }
.products-heading > p { font-size: 15px; line-height: 1.7; color: #8a98a0; margin: 0 0 4px; }
.product-shelf { display: grid; grid-template-columns: 1.3fr 1fr; gap: 28px; }
.product-tile { --tile-glow: #a3e9d812; --pointer-x: 50%; --pointer-y: 30%; position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; padding: 32px; min-height: 560px; border: 1px solid #ffffff1a; border-radius: 24px; background: #101819b3; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); transition: transform .35s, border-color .35s; }
.product-tile:before { content: ''; z-index: -1; position: absolute; inset: 0; background: radial-gradient(500px circle at var(--pointer-x) var(--pointer-y), var(--tile-glow), transparent 75%); pointer-events: none; }
.product-tile-featured:hover, .product-tile-featured:focus-visible { transform: translateY(-6px); border-color: #a3e9d866; }
.product-tile-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.product-category, .product-tile-footer { font: 400 9px/1.5 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .14em; color: #94aaa9; }
.product-badge { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border: 1px solid #a3e9d826; border-radius: 30px; font-size: 10px; color: #bbe6d9; white-space: nowrap; }
.product-badge > span { width: 4px; height: 4px; border-radius: 50%; background: #a3e9d8; }
.product-icon-stage { position: relative; display: grid; place-items: center; flex: 1; min-height: 300px; }
.product-icon-stage:before { content: ''; position: absolute; width: 300px; height: 240px; background: radial-gradient(ellipse, #bbdca918, transparent 70%); }
.product-app-icon { position: relative; width: 144px; height: 144px; border-radius: 32px; box-shadow: 0 30px 55px #0007, 0 0 0 1px #cfdfc226; transform: rotate(-7deg); transition: transform .5s; }
.product-tile-featured:hover .product-app-icon, .product-tile-featured:focus-visible .product-app-icon { transform: translateY(-8px) rotate(0deg); }
.icon-orbit { position: absolute; border: 1px solid #b6d7c612; border-radius: 50%; width: 220px; height: 220px; transform: rotateX(52deg) rotate(-15deg); }
.icon-orbit.orbit-outer { width: 350px; height: 350px; transform: rotateX(52deg) rotate(15deg); }
.orbit-spark { position: absolute; width: 4px; height: 4px; background: #b9e4d0; border-radius: 50%; box-shadow: 0 0 14px #a3e9d880; }
.spark-one { left: 22%; top: 44%; }.spark-two { right: 24%; top: 62%; width: 3px; height: 3px; opacity: .5; }
.product-tile-content { display: flex; justify-content: space-between; align-items: flex-end; gap: 26px; }
.product-tile-content h3 { font-size: clamp(32px, 3vw, 46px); font-weight: 500; letter-spacing: -.05em; line-height: 1.1; margin: 0 0 14px; }
.product-tile-content p { max-width: 410px; font-size: 14px; line-height: 1.7; color: #93a6a7; margin: 0; }
.product-launch { --cut: 10px; position: relative; isolation: isolate; display: inline-flex; align-items: center; gap: 12px; flex: 0 0 auto; height: 44px; padding: 0 18px 0 14px; font: 500 11px/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .06em; white-space: nowrap; color: #c5f5e6; background: #a3e9d859; clip-path: polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut)); transition: color .25s ease .1s; }
.product-launch:before, .product-launch:after { content: ''; position: absolute; z-index: -1; }
.product-launch:before { inset: 1px; clip-path: inherit; background: repeating-linear-gradient(0deg, #ffffff06 0 1px, transparent 1px 3px), #0a1415; }
.product-launch:after { inset: 0; background: linear-gradient(90deg, #a3e9d8, #a5a0f5); transform: scaleX(0); transform-origin: left; transition: transform .45s cubic-bezier(.7, 0, .2, 1); }
.launch-nodes { position: relative; display: flex; align-items: center; gap: 6px; }
.launch-nodes:before { content: ''; position: absolute; left: 2px; right: 2px; height: 1px; background: currentColor; opacity: .3; }
.launch-nodes i { position: relative; width: 5px; height: 5px; border-radius: 50%; background: currentColor; opacity: .3; animation: launch-fire 1.8s ease-in-out infinite; }
.launch-nodes i:nth-child(2) { animation-delay: .3s; }.launch-nodes i:nth-child(3) { animation-delay: .6s; }
.launch-cursor { display: inline-block; width: .6em; height: 1px; margin-left: 3px; vertical-align: -1px; background: currentColor; animation: tagline-blink 1s steps(1) infinite; }
.product-tile-featured:hover .product-launch, .product-tile-featured:focus-visible .product-launch { color: #050505; }
.product-tile-featured:hover .product-launch:after, .product-tile-featured:focus-visible .product-launch:after { transform: scaleX(1); }
.product-tile-featured:hover .launch-cmd, .product-tile-featured:focus-visible .launch-cmd { animation: launch-glitch .4s steps(2, end) 1; }
@keyframes launch-fire { 0%, 100% { opacity: .3; box-shadow: none; } 18% { opacity: 1; box-shadow: 0 0 8px currentColor; } }
@keyframes launch-glitch { 0% { text-shadow: -2px 0 #a5a0f5, 2px 0 #3fe0c0; transform: translateX(1px); } 50% { text-shadow: 2px 0 #a5a0f5, -2px 0 #3fe0c0; transform: translateX(-1px); } 100% { text-shadow: none; transform: none; } }
.product-tile-footer { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid #ffffff0e; margin-top: 30px; padding-top: 20px; font-size: 8px; color: #718d8b; }
.product-tile-next { --tile-glow: #a5a0f515; background: #11121bb3; }
.product-tile-next .product-category, .product-tile-next .product-tile-footer { color: #8988a5; }
.product-tile-next .product-tile-content p { color: #9291a8; }
.next-dot { width: 7px; height: 7px; border-radius: 50%; border: 1px solid #a5a0f5; box-shadow: 0 0 14px #a5a0f530; }
.next-idea-art { position: relative; min-height: 300px; flex: 1; display: grid; place-items: center; }
.idea-tile { position: absolute; width: 125px; height: 150px; border-radius: 22px; border: 1px solid #a5a0f526; background: #171925; transition: transform .6s; }
.idea-tile-back { transform: translate(-28px, 5px) rotate(-18deg); opacity: .5; }.idea-tile-middle { transform: translate(28px, 5px) rotate(18deg); opacity: .6; }
.idea-tile-front { display: grid; place-items: center; transform: translateY(-8px); background: linear-gradient(145deg, #232536, #14151e); box-shadow: 0 25px 40px #0004; }
.idea-tile-front span { font-size: 45px; line-height: 1; font-weight: 200; color: #a5a0f5; }
.product-tile-next:hover .idea-tile-back { transform: translate(-38px, 5px) rotate(-24deg); }.product-tile-next:hover .idea-tile-middle { transform: translate(38px, 5px) rotate(24deg); }
.next-ellipsis { font-size: 18px; letter-spacing: 4px; line-height: 12px; }

@media(max-width:1050px) {
  .roadmap-shell { column-gap: 32px; }.roadmap-map-meta, .roadmap-map-footer { font-size: 8px; letter-spacing: .06em; }
  .roadmap-map-footer span:last-child { display: none; }.product-shelf { gap: 20px; }.product-tile { padding: 26px; }
  .product-tile-top { align-items: flex-start; }.product-category { max-width: 150px; line-height: 1.7; }
  .products-heading > p { font-size: 13px; }.product-tile-content { gap: 16px; }.product-launch { height: 40px; gap: 9px; padding: 0 12px; }
}
@media(max-width:720px) {
  .studio-page .process-section { --roadmap-top: 76px; padding-block: 72px; background: #080d10d9; }
  .roadmap-shell { grid-template-columns: 1fr; row-gap: 20px; }
  .roadmap-intro h2 { font-size: clamp(30px, 7vw, 46px); margin-top: 16px; }
  .roadmap-intro h2 br { display: none; }.roadmap-intro h2 span:before { content: ' '; }
  .roadmap-map { grid-column: 1; grid-row: 2; padding: 0; }
  .roadmap-svg { display: block; height: clamp(140px, 25svh, 240px); margin-block: 4px; }
  .roadmap-map-meta { font-size: 7px; }.roadmap-map-footer { display: none; }
  .roadmap-stories { grid-row: 3; }.roadmap-story { padding-block: 0; }
  .roadmap-story + .roadmap-story { margin-top: 32px; }
  .roadmap-chapter { font-size: 9px; margin-bottom: 10px; }.roadmap-story h3 { font-size: 30px; margin-bottom: 12px; }
  .roadmap-copy { font-size: 13px; line-height: 1.6; max-width: 100%; }
  .roadmap-stops { gap: 12px; padding: 0; }.roadmap-stops a { font-size: 10px; gap: 7px; padding-top: 10px; min-height: 38px; }
  .roadmap-ready .roadmap-viewport { padding-block: 24px; }.roadmap-ready .roadmap-stories { min-height: 145px; }
  .roadmap-ready .roadmap-story + .roadmap-story { margin-top: 0; }
  .products-heading { display: block; margin-bottom: 36px; }.products-heading h2 { font-size: 44px; margin-top: 24px; }
  .products-heading > p { margin-top: 22px; font-size: 14px; }.products-heading > p br { display: none; }
  .product-shelf { grid-template-columns: 1fr; }.product-tile { min-height: 510px; border-radius: 20px; padding: 24px; }
  .product-icon-stage, .next-idea-art { min-height: 260px; }.product-app-icon { width: 124px; height: 124px; border-radius: 28px; }
  .product-tile-content h3 { font-size: 34px; }.product-tile-content p { font-size: 13px; }.product-tile-footer { font-size: 7px; }
  .product-tile-next { min-height: 450px; }.next-idea-art { min-height: 240px; }
  .product-tile-content { flex-direction: column; align-items: flex-start; gap: 22px; }
}
@media(max-height:650px) and (min-width:721px) {
  .roadmap-ready .roadmap-viewport { padding-block: 24px; }.roadmap-shell { row-gap: 14px; }
  .roadmap-intro h2 { font-size: 40px; margin-top: 20px; }.roadmap-ready .roadmap-stories { min-height: 180px; }
  .roadmap-story h3 { font-size: 30px; }.roadmap-copy { font-size: 14px; }.roadmap-map { padding: 0; }.roadmap-stops { padding-top: 0; }
}
@media(prefers-reduced-motion:reduce) {
  .product-tile, .product-app-icon, .idea-tile, .roadmap-landmark * { transition: none; }
  .product-launch, .product-launch:after { transition: none; }.launch-nodes i, .launch-cursor, .product-tile-featured:hover .launch-cmd, .product-tile-featured:focus-visible .launch-cmd { animation: none; }
  .product-tile-featured:hover, .product-tile-featured:focus-visible { transform: none; }
  .product-tile-featured:hover .product-app-icon, .product-tile-featured:focus-visible .product-app-icon { transform: rotate(-7deg); }
  .product-tile-next:hover .idea-tile-back { transform: translate(-28px, 5px) rotate(-18deg); }
  .product-tile-next:hover .idea-tile-middle { transform: translate(28px, 5px) rotate(18deg); }
  .roadmap-traveller { display: none; }
}
@media(max-width:720px) and (max-height:740px) {
  .roadmap-ready .roadmap-viewport { padding-block: 12px; }
  .roadmap-shell { row-gap: 10px; }
  .roadmap-intro h2 { font-size: clamp(22px, 6vw, 28px); margin-top: 12px; }
  .roadmap-svg { height: 120px; }
  .roadmap-ready .roadmap-stories { min-height: 125px; }
  .roadmap-story h3 { font-size: 26px; margin-bottom: 10px; }
  .roadmap-copy { font-size: 12px; }
  .roadmap-stops a { min-height: 34px; }
}

/* Hero tagline — label with gradient rule, statement below */
.studio-page .hero-tagline{font-family:Inter,Arial,sans-serif;font-size:clamp(20px,1.8vw,26px);font-weight:300;line-height:1.35;letter-spacing:-.02em;text-transform:none;max-width:560px;color:#ffffffd9}
.studio-page .hero-tagline em{font-style:normal}
.studio-page .tagline-kicker{display:flex;align-items:center;gap:14px;margin-bottom:18px;font-size:12px;font-weight:500;letter-spacing:.02em;color:#ffffff80}
.studio-page .tagline-kicker::before{content:"";width:36px;height:1px;background:linear-gradient(90deg,#a3e9d8,#a5a0f5)}
.studio-page .tagline-body{display:block}
@media(max-width:720px){
  .studio-page .hero-tagline{font-size:18px;max-width:340px}
  .studio-page .tagline-kicker{font-size:11px;margin-bottom:12px}
}
.studio-page .tagline-kicker{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.04em}
.studio-page .tagline-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.studio-page .tagline-cursor{display:inline-block;align-self:flex-end;width:.65em;height:2px;margin:0 0 .15em -12px;background:#a3e9d8;box-shadow:0 0 8px #a3e9d8b3;animation:tagline-blink 1s steps(1) infinite}
.studio-page .tagline-kicker.is-typing .tagline-cursor{animation:none}
@keyframes tagline-blink{50%{opacity:0}}

/* Manifesto — terminal prompt + neural trace */
.manifesto-prompt{margin:0;font:400 12px/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.04em;color:#ffffffb3;white-space:nowrap}
.manifesto-prompt .prompt-path{color:#a3e9d8}
.manifesto-prompt .prompt-sign{color:#a5a0f5}
.manifesto-trace{width:min(520px,45vw);height:auto;overflow:visible}
.trace-base{stroke:#ffffff26;stroke-width:1}
.trace-pulse{stroke:#a3e9d8;stroke-width:1.5;stroke-linecap:round;stroke-dasharray:60 1000;stroke-dashoffset:60;filter:drop-shadow(0 0 4px #a3e9d8);animation:trace-pulse 6s linear infinite}
.trace-node circle{stroke:#ffffff40;fill:#050505}
.trace-node .node-core{stroke:none;fill:#ffffff59}
.trace-node text{fill:#ffffff80;font:400 11px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.06em}
.trace-node{animation:trace-node-glow 6s linear infinite}
.trace-node:nth-of-type(1){animation-delay:.32s}
.trace-node:nth-of-type(2){animation-delay:2.11s}
.trace-node:nth-of-type(3){animation-delay:3.9s}
@keyframes trace-pulse{0%{stroke-dashoffset:60}83%,100%{stroke-dashoffset:-1000}}
@keyframes trace-node-glow{0%,5%{filter:drop-shadow(0 0 6px #a3e9d8)}14%,100%{filter:none}}
.trace-node .node-core{animation:trace-core 6s linear infinite;animation-delay:inherit}
@keyframes trace-core{0%,5%{fill:#a3e9d8}14%,100%{fill:#ffffff59}}

/* Manifesto words light up with scroll */
.manifesto-section h2.is-reveal .manifesto-word{color:#ffffff2e;transition:color .5s ease}
.manifesto-section h2.is-reveal .manifesto-word.is-lit{color:#ffffffd9}
.manifesto-section h2.is-reveal strong .manifesto-word.is-lit{color:#fff;text-shadow:0 0 24px #a3e9d840}

@media(max-width:720px){
  .manifesto-topline{flex-direction:column;align-items:flex-start;gap:20px}
  .manifesto-prompt{font-size:11px}
  .manifesto-trace{width:100%}
  .trace-node text{font-size:17px}
}
@media(prefers-reduced-motion:reduce){
  .trace-pulse{display:none}
  .trace-node,.trace-node .node-core{animation:none}
}

/* Terminal buttons */
.studio-page .button-term{position:relative;gap:12px;justify-content:flex-start;padding:15px 24px;border:1px solid #a3e9d84d;background:linear-gradient(90deg,#a3e9d8,#a5a0f5) no-repeat left/0 100%;color:#fff;font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:lowercase;transition:background-size .45s cubic-bezier(.7,0,.2,1),color .25s ease .1s,border-color .25s ease}
.studio-page .button-term::before,.studio-page .button-term::after{content:"";position:absolute;width:8px;height:8px;border-color:#a3e9d8;border-style:solid;transition:transform .3s ease}
.studio-page .button-term::before{top:-4px;left:-4px;border-width:1px 0 0 1px}
.studio-page .button-term::after{right:-4px;bottom:-4px;border-width:0 1px 1px 0}
.studio-page .button-term:hover,.studio-page .button-term:focus-visible{background-size:100% 100%;border-color:transparent;color:#050505;transform:none}
.studio-page .button-term:hover::before{transform:translate(-3px,-3px)}
.studio-page .button-term:hover::after{transform:translate(3px,3px)}
.studio-page .button-term span{margin:0;font-size:inherit;line-height:1.5}
.studio-page .button-term .btn-prompt{color:#a3e9d8;transition:color .25s ease .1s}
.studio-page .button-term:hover .btn-prompt,.studio-page .button-term:focus-visible .btn-prompt{color:#050505}
.studio-page .button-term .btn-cursor{width:.6em;height:1px;align-self:flex-end;margin:0 0 .35em -8px;background:currentColor;animation:tagline-blink 1s steps(1) infinite}
@media(max-width:720px){.studio-page .button-term{font-size:11px;padding:13px 20px}}
@media(prefers-reduced-motion:reduce){.studio-page .button-term,.studio-page .button-term::before,.studio-page .button-term::after{transition:none}.studio-page .button-term .btn-cursor{animation:none}}
/* Privacy page */
.studio-legal{position:relative;padding-block:190px 130px}
.studio-page .legal-shell{max-width:880px}
.legal-kicker{display:flex;align-items:center;gap:14px;margin:0;font:500 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase;color:#a3e9d8}
.legal-kicker span{width:40px;height:1px;background:linear-gradient(90deg,#a3e9d8,#a5a0f5)}
.studio-legal h1{margin:26px 0 40px;font-size:clamp(64px,10vw,136px);font-weight:200;line-height:.86;letter-spacing:-.055em;text-transform:uppercase;color:#fff}
.legal-meta{display:flex;flex-wrap:wrap;gap:14px 44px;margin:0 0 24px;padding:20px 24px;border:1px solid #ffffff14;border-radius:18px;background:#080d10cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.legal-meta dt{margin-bottom:6px;font:500 10px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:#a3e9d8b3}
.legal-meta dd{margin:0;font-size:15px;color:#fff}
.studio-legal a{color:#c5f5e6;text-decoration:underline;text-decoration-color:#a3e9d866;text-underline-offset:3px;overflow-wrap:anywhere}
.studio-legal a:hover{text-decoration-color:#a3e9d8}
.legal-block{display:grid;grid-template-columns:56px minmax(0,1fr);gap:8px;padding:34px 0;border-bottom:1px solid #ffffff12}
.legal-number{padding-top:6px;font:500 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;color:#a5a0f5}
.legal-block h2{margin:0 0 14px;font-size:clamp(22px,2.4vw,28px);font-weight:500;letter-spacing:-.03em;color:#fff}
.legal-block p{margin:0;font-size:15px;line-height:1.8;color:#ffffffa6}
.legal-block p+p{margin-top:14px}
.legal-block strong{font-weight:600;color:#fff}
.legal-sign{margin:48px 0 0;font:500 12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;color:#ffffff59}
@media(max-width:720px){.studio-legal{padding-block:130px 90px}.legal-meta{flex-direction:column;gap:14px;padding:18px}.legal-block{grid-template-columns:1fr;gap:10px;padding:28px 0}.legal-number{padding-top:0}}
/* Contact: the address sits to the right of the heading and wraps below it on narrow screens. */
.studio-page .contact-inner{flex-wrap:wrap}
.studio-page .contact-email{font-size:1.125rem;padding:16px 26px;justify-self:auto}
