/* Obsidian visual layer. Content and API contracts remain in main.js. */
:root{--bg:#07090e;--surface:#10141e;--raised:#19202e;--text:#f0f3fa;--muted:#a3aec3;--accent:#9cebd5;--green:#58d7ba;--line:rgba(255,255,255,.09);--input:#0b1019;--shadow:0 24px 80px #0005}
html[data-theme=light]{--bg:#f5f7fc;--surface:#fff;--raised:#e9edf8;--text:#151e33;--muted:#52617a;--accent:#126c59;--green:#16826b;--line:#d7dfed;--input:#f8faff;--shadow:0 24px 70px #21315a10}
body{overflow-x:clip;background-image:radial-gradient(ellipse at 12% 5%,#6554e614,transparent 28%),radial-gradient(ellipse at 90% 18%,#28c8d011,transparent 26%);font-family:Inter,"Segoe UI",Arial,sans-serif}
.top{position:sticky;top:16px;z-index:40;margin:16px auto 0;width:min(1280px,calc(100% - 40px));border:1px solid var(--line);border-radius:24px;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(16px);box-shadow:var(--shadow);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.top.compact{transform:translateY(-7px) scale(.98)}
.top .nav-inner{width:100%;padding:15px 22px;min-height:76px}
#nav{position:relative;isolation:isolate}#nav a{position:relative;z-index:1;padding:9px 12px;border-radius:12px}
.nav-indicator{position:absolute;inset:0 auto auto 0;background:var(--raised);border:1px solid var(--line);border-radius:12px;pointer-events:none;opacity:0;transition:transform .25s,opacity .2s;z-index:0}
.btn{border-radius:12px;box-shadow:inset 0 1px 0 #fff3;transition:transform .25s,opacity .25s}.btn:hover{transform:translateY(-3px)}
.hero{padding-top:100px;padding-bottom:90px;min-height:740px;gap:60px}.hero h1{font-size:clamp(44px,5.1vw,78px);line-height:1.3;letter-spacing:-.05em}.hero .lead{max-width:540px;font-size:17px}.hero-specialty{font-family:ui-monospace,monospace;color:var(--muted)}
.hero-word{display:inline-block;animation:word-in .75s both cubic-bezier(.16,1,.3,1);animation-delay:var(--delay,0ms)}.hero-word.key{color:var(--accent);position:relative}.hero-word.key:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,transparent,#67ddec,#9d8cff,transparent);transform:scaleX(.6);animation:underline-breathe 4s ease-in-out infinite}
.system-art{overflow:visible;background:radial-gradient(ellipse,#427ccd10,transparent 65%);height:500px}.system-art .core{border-radius:34px;background:linear-gradient(145deg,var(--raised),var(--bg));border-color:#78dfc866;z-index:2}.core:before{content:"";position:absolute;inset:-22px;border-radius:48px;background:radial-gradient(ellipse,#5ddac52a,transparent 70%);z-index:-1;animation:core-breathe 4s ease-in-out infinite}.orbit{opacity:.5}.node{z-index:3;backdrop-filter:blur(16px);background:color-mix(in srgb,var(--surface) 90%,transparent);transition:transform .35s,border-color .3s;transform-style:preserve-3d}.node:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.node:hover,.node:focus-visible{border-color:#8d96ed;transform:perspective(600px) translateY(-7px) rotateX(5deg) rotateY(-5deg)}
.data-beams{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}.beam-track{fill:none;stroke:#7492bb;stroke-opacity:.25;stroke-width:1}.beam-dot{fill:#8af4e0;filter:drop-shadow(0 0 4px #5adccc)}
.tech-strip{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);border-color:var(--line)}.tech-strip>.wrap{width:max-content;max-width:none;flex-wrap:nowrap;justify-content:start;gap:0;direction:ltr;will-change:transform;margin:0;min-height:100px}.tech-strip span{flex:none;width:170px;text-align:center;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:15px;color:var(--muted);padding:16px 20px}.tech-strip span:hover{color:var(--brand,var(--accent))}
.section{padding-block:90px}.section h2{font-size:clamp(30px,3.6vw,49px)}.section-head{align-items:end}.section>.eyebrow,.section-head .eyebrow{margin-bottom:18px}.section-number{display:inline-block;font:700 54px/1 ui-monospace,monospace;-webkit-text-stroke:1px var(--muted);color:transparent;position:relative;margin-inline-end:18px;vertical-align:middle}.section-number:after{content:attr(data-number);position:absolute;inset:0;color:var(--accent);clip-path:inset(calc(100% - var(--fill,0%)) 0 0);-webkit-text-stroke:0}
.service-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.service-card{grid-column:span 3;min-height:245px;padding:32px;border-radius:22px}.service-card:first-child{grid-column:span 4}.service-card:nth-child(2){grid-column:span 2}.service-card h3{font-size:22px}.service-icon{font-family:ui-monospace,monospace}
.service-card,.project-card,.process-card,.article-card,.panel,.architect-panel,.request-panel{background:linear-gradient(140deg,color-mix(in srgb,var(--surface) 95%,transparent),color-mix(in srgb,var(--bg) 90%,transparent));border:1px solid var(--line);border-radius:22px;backdrop-filter:blur(16px)}
.spotlight{position:relative;isolation:isolate;overflow:hidden}.spotlight:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(400px circle at var(--mx,50%) var(--my,50%),#7499f31c,transparent 65%);opacity:0;transition:opacity .3s;z-index:-1}.spotlight:hover:before{opacity:1}.spotlight:after{content:"";position:absolute;inset:0;border:1px solid transparent;border-radius:inherit;pointer-events:none;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),#a7c8ff77,transparent) border-box;mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:0;transition:opacity .3s}.spotlight:hover:after{opacity:1}
.process-grid{gap:16px}.process-card{padding:28px}.process-card>span{font:600 34px ui-monospace,monospace;color:var(--accent)}.about-band{background:linear-gradient(115deg,#7985ff0a,transparent,#4edeb208);border-block:1px solid var(--line)}
.architect-panel{position:relative;overflow:hidden;background:radial-gradient(ellipse at 0 0,#7365ed16,transparent 60%),var(--surface)}.architect-input{position:relative;border-radius:20px}.architect-input:before{content:"";position:absolute;inset:-2px;border:1px solid #74d9e4;border-radius:22px;pointer-events:none;opacity:0;transform:scale(.98);transition:opacity .3s,transform .4s}.architect-input:focus-within:before{opacity:.7;transform:scale(1);animation:input-pulse 3s infinite}.architect-input textarea{min-height:220px;background:var(--input)}.large-symbol{color:#9a92ef}.blueprint-card{animation:word-in .55s both;animation-delay:var(--delay,0ms)}
#lab .panel{padding:32px;background-image:radial-gradient(#718ab415 1px,transparent 1px);background-size:18px 18px}.lab-step{position:relative;transition:transform .35s}.lab-step.active{transform:translateY(-5px);box-shadow:0 0 32px #5ee1ba15}.lab-step.active:after{content:"";position:absolute;inset:-4px;border:1px solid var(--accent);border-radius:inherit;animation:pipeline-pulse 1.8s infinite;pointer-events:none}
.playground summary{list-style:none}.playground summary::-webkit-details-marker{display:none}.playground summary>span:last-child{transition:transform .4s}.playground[open] summary>span:last-child{transform:rotate(45deg)}.accordion-body{transform-origin:top}.chat{border-radius:24px;box-shadow:0 30px 100px #0008;transform-origin:bottom right}.chat-head{background:linear-gradient(110deg,var(--raised),var(--surface))}.chat-avatar{position:relative}.chat-avatar:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--green);inset:auto 0 0 auto;animation:core-breathe 2.5s infinite}.chat-fab{isolation:isolate;box-shadow:0 8px 36px #58d7ba20}.chat-fab:before{content:"";position:absolute;inset:-5px;border:1px solid var(--accent);border-radius:inherit;z-index:-1;animation:pipeline-pulse 3s infinite}
.reveal{transition:transform .7s cubic-bezier(.16,1,.3,1),opacity .7s}.reveal.pending{opacity:0;transform:translateY(24px)}
@keyframes word-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes core-breathe{50%{opacity:.45;transform:scale(1.08)}}@keyframes underline-breathe{50%{opacity:.4;transform:scaleX(1)}}@keyframes pipeline-pulse{0%{opacity:.5;transform:scale(.98)}100%{opacity:0;transform:scale(1.06)}}@keyframes input-pulse{50%{opacity:.3;transform:scale(1.005)}}
.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}
@media(min-width:1400px){.hero{min-height:800px}}
@media(max-width:1000px){.top{width:calc(100% - 24px)}.hero{gap:30px;padding-top:65px}.service-card:first-child,.service-card:nth-child(2){grid-column:span 3}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.top{top:8px;border-radius:18px;margin-top:8px}.top .nav-inner{padding:10px 12px;min-height:62px}.top.compact{transform:translateY(-3px)}#nav.open{background:var(--surface);border-radius:18px;border:1px solid var(--line)}.nav-indicator{display:none}.hero{padding-top:50px;padding-bottom:50px;min-height:auto}.hero h1{font-size:44px}.hero .lead{font-size:16px}.system-art{height:390px;margin-block:10px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:first-child,.service-card:nth-child(2){grid-column:auto;min-height:210px}.section{padding-block:55px}.section-number{font-size:38px;margin-inline-end:10px}.process-card{padding:20px}.tech-strip span{width:140px}.architect-input textarea{min-height:180px}#lab .panel{padding:20px}.chat{transform-origin:bottom center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none}.hero-word{opacity:1}.node:hover,.node:focus-visible{transform:none}.tech-strip>.wrap{transform:none!important;will-change:auto}.section-number:after{clip-path:none}}
.hero h1 .hero-word{color:var(--text)}.hero h1 .hero-word.key{color:var(--accent);background:linear-gradient(110deg,var(--accent),#71cce1 55%,#b7a4f4);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero{position:relative;isolation:isolate}.hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 75% 30%,#7965ed12,transparent 55%),radial-gradient(ellipse at 20% 60%,#45dfc10c,transparent 55%);animation:aurora-drift 15s ease-in-out infinite alternate}@keyframes aurora-drift{to{transform:translate3d(18px,-12px,0) scale(1.04);opacity:.45}}
html[data-theme=light] .hero h1 .hero-word.key{-webkit-text-fill-color:var(--accent)}
@media(max-width:800px){#nav{position:absolute;top:calc(100% + 10px);left:0;right:0;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}#nav.show{display:flex;align-items:stretch;gap:4px}#nav a{text-align:start;padding:12px 16px}.nav-indicator{display:none}.top .nav-inner{position:static}}
/* V8.2 — editorial hierarchy and quieter interactions. */
.hero{padding-top:65px;padding-bottom:65px;min-height:660px;gap:48px}.hero h1{font-size:clamp(42px,4.7vw,72px);max-width:670px;line-height:1.35}.hero-copy .eyebrow{margin-bottom:24px}.hero-specialty{margin-bottom:22px}.hero-note{margin-top:30px}
.node{cursor:pointer;text-align:start;color:var(--text);font:inherit}.node[aria-pressed=true]{border-color:var(--accent);background:var(--raised)}.beam-track.selected{stroke:var(--accent);stroke-opacity:.8;stroke-width:2}.node-info{position:absolute;inset:calc(100% + 15px) 12px auto;min-height:72px;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);font-size:13px;direction:inherit;color:var(--muted);box-shadow:var(--shadow)}.node-info strong{color:var(--accent);margin-inline-end:8px}.system-art{margin-bottom:85px}.node-info[hidden]{display:none}
.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.featured-project{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;min-height:380px}.featured-project .project-visual{height:100%;min-height:360px}.featured-project .project-body{padding:40px}.featured-project h3{font-size:30px}.featured-label{display:block;color:var(--accent);font-size:11px;letter-spacing:.12em;margin-bottom:20px}.project-visual img{object-fit:contain;background:var(--input)}.project-body details{margin-top:22px}.project-body summary{color:var(--accent);font-weight:600}.project-body p{max-width:65ch}.project-card:not(.featured-project) .project-visual{height:240px}
.service-illustration{height:92px;width:100%;max-width:260px;margin-bottom:22px;color:var(--accent);overflow:visible}.service-illustration .wire{stroke:var(--muted);stroke-width:1;opacity:.5;fill:none}.service-illustration .block{stroke:var(--accent);fill:var(--raised);stroke-width:1}.service-illustration .ink{fill:var(--accent)}.service-card .service-icon{display:none}.service-card{min-height:290px}.service-card h3{margin-bottom:10px}.service-card:hover .service-illustration{transform:translateY(-3px);transition:transform .3s}
.about-grid{grid-template-columns:1fr 1fr;gap:35px 70px}.maker-identity{grid-row:span 2;padding-inline-end:30px}.maker-identity h2{font-size:44px;margin-bottom:8px}.maker-monogram{position:relative;display:grid;place-items:center;width:150px;height:170px;border:1px solid var(--line);border-radius:25px;background:linear-gradient(145deg,var(--raised),var(--bg));font:600 50px ui-monospace,monospace;color:var(--accent);margin-bottom:30px}.maker-monogram span{position:absolute;bottom:12px;right:16px;font-size:25px}.maker-links{display:flex;gap:18px;flex-wrap:wrap;color:var(--accent);margin-top:24px}.about-grid>div:nth-child(2) h2{font-size:28px}.about-grid>div:nth-child(2){align-self:end}.about-grid>div:nth-child(3){align-self:start}.about-grid .lead{font-size:17px}
.chat-fab:before,.hero-word.key:after,.lab-step.active:after,.chat-avatar:after{animation:none}.lab-step.active:after{animation:pipeline-pulse 1.2s 1}.orbit-two{animation:none}.hero:before{animation:none}.core:before{animation-duration:6s}.node-info{animation:word-in .3s both}
@media(max-width:800px){.hero{padding-top:38px;min-height:auto}.hero h1{font-size:clamp(36px,7vw,54px)}.hero-copy .lead{margin-bottom:25px}.featured-project{display:block}.featured-project .project-visual{min-height:0;height:280px}.featured-project .project-body{padding:25px}.about-grid{grid-template-columns:1fr}.maker-identity{grid-row:auto;padding:0}.maker-monogram{width:110px;height:125px}.about-grid>div:nth-child(2) h2{font-size:27px}.node-info{font-size:12px}.system-art{margin-bottom:95px}}
@media(max-width:520px){.hero h1{font-size:40px;line-height:1.45}.hero-specialty{font-size:11px}.hero-note{margin-top:24px}.project-grid{grid-template-columns:1fr}.featured-project .project-visual{height:220px}.featured-project h3{font-size:25px}.chat-fab{width:49px;height:49px;min-width:49px;padding:0;justify-content:center;border-radius:50%;font-size:0;inset-inline-end:16px;bottom:16px}.chat-fab>span{font-size:25px}.maker-identity h2{font-size:36px}}
