@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,500..800&family=DM+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--ink:#101216;--ink-soft:#171a20;--ink-lift:#20242b;--paper:#f2ece3;--paper-muted:#c8c1b8;--paper-dim:#8c8b86;--coral:#d76a59;--coral-soft:#f0a093;--sage:#86a892;--line:#f2ece321;--line-dark:#1012161f;--max-width:1240px;--ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--ink)}body{min-width:320px;min-height:100dvh;color:var(--paper);background:radial-gradient(circle at 74% 10%, #86a8921f, transparent 30rem), radial-gradient(circle at 14% 58%, #d76a5914, transparent 26rem), var(--ink);font-family:DM Sans,sans-serif;overflow-x:hidden}body:before{z-index:-1;pointer-events:none;content:"";opacity:.25;background-image:linear-gradient(#f2ece309 1px,#0000 1px),linear-gradient(90deg,#f2ece309 1px,#0000 1px);background-size:72px 72px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000 78%);mask-image:linear-gradient(#000 0%,#0000 78%)}body.mode-page{background:var(--ink);overflow:auto}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--coral-soft);outline-offset:4px}.app-shell{isolation:isolate;min-height:100dvh;position:relative}.page-width{width:min(calc(100% - 48px), var(--max-width));margin:0 auto}.site-nav{z-index:50;-webkit-backdrop-filter:blur(22px);background:#101216c7;border-bottom:1px solid #f2ece317;height:76px;position:sticky;top:0}.nav-inner{width:min(calc(100% - 48px), var(--max-width));justify-content:space-between;align-items:center;height:100%;margin:0 auto;display:flex}.nav-brand{align-items:center;gap:10px;min-width:165px;display:inline-flex}.nav-brand strong,.nav-brand small{display:block}.nav-brand strong{color:var(--paper);letter-spacing:-.03em;font-family:Bricolage Grotesque,sans-serif;font-size:17px}.nav-brand small{color:var(--paper-dim);letter-spacing:.12em;text-transform:uppercase;margin-top:1px;font-family:IBM Plex Mono,monospace;font-size:9px}.nav-links{align-items:center;gap:30px;display:flex}.nav-links a,.nav-status,.nav-menu-toggle{color:var(--paper-dim);transition:color .22s var(--ease), transform .22s var(--ease);font-size:12px;font-weight:600}.nav-links a:hover{color:var(--paper);transform:translateY(-1px)}.nav-actions{justify-content:flex-end;align-items:center;min-width:165px;display:flex}.nav-status{color:var(--sage);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;font-family:IBM Plex Mono,monospace;font-size:10px;display:inline-flex}.status-dot,.eyebrow-dot{background:var(--sage);border-radius:50%;flex:none;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 4px #86a8921f,0 0 18px #86a892b3}.nav-menu-toggle{cursor:pointer;background:0 0;width:38px;height:38px;display:none}.nav-menu-toggle span{background:var(--paper);width:18px;height:1px;margin:5px auto;display:block}.hero-section{align-items:center;min-height:calc(100dvh - 76px);padding:70px 0 92px;display:flex;position:relative;overflow:hidden}.hero-inner{z-index:2;grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);align-items:center;gap:clamp(26px,5vw,80px);display:grid;position:relative}.hero-copy{z-index:4;max-width:590px;position:relative}.eyebrow{color:var(--sage);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:24px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:500;display:inline-flex}.hero-copy h1,.section-intro h2{color:var(--paper);letter-spacing:-.065em;text-wrap:balance;font-family:Bricolage Grotesque,sans-serif;font-weight:700}.hero-copy h1{max-width:630px;font-size:clamp(3.8rem,7.3vw,7.2rem);line-height:.9}.hero-copy h1 em{color:var(--coral-soft);font-style:normal;display:block}.hero-lede{max-width:510px;color:var(--paper-muted);text-wrap:pretty;margin-top:32px;font-size:16px;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.button{min-height:48px;transition:transform .22s var(--ease), background .22s var(--ease), border-color .22s var(--ease), color .22s var(--ease);border-radius:10px;justify-content:center;align-items:center;gap:16px;padding:0 20px;font-size:13px;font-weight:700;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)scale(.98)}.button-primary{color:#211717;background:var(--coral-soft);box-shadow:0 14px 30px #d76a592e}.button-primary:hover{background:var(--paper)}.button-secondary{border:1px solid var(--line);color:var(--paper);background:#f2ece308}.button-secondary:hover{background:#f2ece314;border-color:#f2ece347}.hero-facts{flex-wrap:wrap;gap:28px;margin-top:58px;display:flex}.hero-facts div{min-width:100px}.hero-facts dt{color:var(--paper-dim);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-family:IBM Plex Mono,monospace;font-size:9px}.hero-facts dd{color:var(--paper);font-size:13px;font-weight:600}.companion-console{-webkit-backdrop-filter:blur(18px);background:#171a20a8;border:1px solid #f2ece326;border-radius:18px;max-width:590px;margin-top:32px;padding:18px;box-shadow:inset 0 1px #f2ece30f,0 18px 50px #00000029}.companion-console-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.companion-console-kicker,.companion-message-label,.companion-status{color:var(--paper-dim);letter-spacing:.08em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:9px}.companion-console-kicker{color:var(--coral-soft);margin-bottom:7px}.companion-console h2{color:var(--paper);letter-spacing:-.04em;font-family:Bricolage Grotesque,sans-serif;font-size:24px}.companion-console-status{color:var(--sage);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:8px;padding-top:5px;font-family:IBM Plex Mono,monospace;font-size:9px;display:inline-flex}.companion-messages{scrollbar-color:#f2ece333 transparent;flex-direction:column;gap:10px;max-height:168px;margin-top:18px;padding-right:4px;display:flex;overflow-y:auto}.companion-message{background:#f2ece30b;border:1px solid #f2ece31a;border-radius:12px;max-width:88%;padding:10px 12px}.companion-message.is-user{background:#d76a591f;border-color:#d76a5947;align-self:flex-end}.companion-message-label{color:var(--coral-soft);margin-bottom:5px;font-size:8px;display:block}.companion-message p{color:var(--paper-muted);font-size:13px;line-height:1.5}.companion-message.is-user p{color:var(--paper)}.companion-message.is-pending p{color:var(--sage)}.companion-composer{gap:8px;margin-top:14px;display:flex}.companion-input{min-width:0;height:42px;color:var(--paper);font:inherit;transition:border-color .18s var(--ease), background .18s var(--ease);background:#101216b8;border:1px solid #f2ece326;border-radius:10px;outline:none;flex:1;padding:0 13px;font-size:13px}.companion-input::placeholder{color:var(--paper-dim)}.companion-input:focus{background:#101216f0;border-color:#f0a093b8}.companion-input:disabled{cursor:wait;opacity:.65}.companion-action{cursor:pointer;height:42px;color:var(--paper);transition:transform .18s var(--ease), background .18s var(--ease), color .18s var(--ease);background:#f2ece317;border-radius:10px;flex:0 0 42px;font-family:IBM Plex Mono,monospace;font-size:16px}.companion-action:hover:not(:disabled){background:#f2ece329;transform:translateY(-1px)}.companion-action:disabled{cursor:not-allowed;opacity:.35}.companion-mic.is-recording{color:#211717;background:var(--coral-soft);box-shadow:0 0 0 4px #d76a591f}.companion-send{color:#211717;background:var(--coral-soft)}.companion-status{letter-spacing:.04em;text-transform:none;min-height:14px;margin-top:9px}.companion-status.is-error{color:var(--coral-soft)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.hero-visual{min-height:650px;position:relative}.model-wash{aspect-ratio:1;filter:blur(8px);background:radial-gradient(circle,#86a89238 0%,#86a89214 32%,#0000 70%);border-radius:50%;width:min(600px,100%);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.model-frame{background:linear-gradient(#f2ece30b,#0000 45%),#171a206b;border:1px solid #f2ece329;border-radius:44% 44% 10px 10px;position:absolute;inset:18px 8% 24px 4%;overflow:hidden;box-shadow:inset 0 1px #f2ece312,0 30px 90px #00000038}.model-frame:before,.model-frame:after{z-index:1;pointer-events:none;content:"";position:absolute}.model-frame:before{opacity:.28;background:repeating-linear-gradient(90deg,#0000 0 72px,#f2ece30f 73px,#0000 74px);inset:0}.model-frame:after{background:linear-gradient(180deg, transparent, var(--coral), transparent);opacity:.65;width:1px;height:56%;top:18%;right:10%}.model-frame-label,.model-frame-footer,.model-note{z-index:3;color:var(--paper-dim);letter-spacing:.08em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:9px;position:absolute}.model-frame-label{top:24px;left:28px}.model-frame-footer{justify-content:space-between;gap:16px;display:flex;bottom:20px;left:24px;right:24px}.model-frame-footer span:first-child{color:var(--sage);align-items:center;gap:8px;display:inline-flex}.live2d-stage{z-index:2;pointer-events:none;position:absolute;inset:32px 0 36px}#live2d-stage canvas{filter:drop-shadow(0 24px 18px #00000042);display:block;pointer-events:none!important;width:50%!important;height:100%!important;position:absolute!important;inset:0!important}#live2d-stage canvas:nth-child(2){left:50%!important}.model-note{color:var(--paper-muted);align-items:center;gap:8px;display:flex}.model-note span{color:var(--coral-soft)}.model-note-top{top:19%;right:0}.model-note-bottom{bottom:17%;left:0}.scroll-cue{bottom:30px;left:max(24px, calc((100% - var(--max-width)) / 2));z-index:3;color:var(--paper-dim);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:12px;font-family:IBM Plex Mono,monospace;font-size:9px;display:inline-flex;position:absolute}.scroll-cue-line{background:var(--coral);width:42px;height:1px;display:inline-block}.hero-backdrop{pointer-events:none;position:absolute;inset:0}.hero-line{background:linear-gradient(#0000,#f2ece329,#0000);width:1px;height:68%;position:absolute;top:16%}.hero-line-one{left:8%}.hero-line-two{opacity:.5;right:12%}.hero-orbit{border:1px solid #86a8921f;border-radius:50%;position:absolute;transform:rotate(-18deg)}.hero-orbit-one{width:43vw;max-width:600px;height:220px;top:14%;right:7%}.hero-orbit-two{border-color:#d76a591f;width:36vw;max-width:520px;height:160px;bottom:8%;right:4%}.content-section{border-top:1px solid #f2ece31a;padding:142px 0;position:relative}.process-section{background:linear-gradient(#f2ece306,#0000)}.section-intro{max-width:600px}.section-intro h2{max-width:680px;font-size:clamp(2.7rem,5vw,5.2rem);line-height:.98}.section-intro>p:last-child{max-width:540px;color:var(--paper-muted);margin-top:22px;font-size:16px;line-height:1.75}.process-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:72px;display:grid}.process-card{border-right:1px solid var(--line);min-height:260px;padding:30px 30px 34px 0}.process-card+.process-card{padding-left:30px}.process-card:last-child{border-right:0}.process-index{color:var(--coral-soft);margin-bottom:70px;font-family:IBM Plex Mono,monospace;font-size:11px;display:block}.process-card h3{color:var(--paper);letter-spacing:-.04em;margin-bottom:12px;font-family:Bricolage Grotesque,sans-serif;font-size:25px}.process-card p{max-width:300px;color:var(--paper-dim);font-size:14px;line-height:1.7}.model-section{background:#f2ece305}.model-section-grid{grid-template-columns:.8fr 1.2fr;align-items:center;gap:clamp(40px,10vw,150px);display:grid}.text-link{color:var(--coral-soft);transition:gap .22s var(--ease), color .22s var(--ease);gap:12px;margin-top:30px;font-size:13px;font-weight:700;display:inline-flex}.text-link:hover{color:var(--paper);gap:18px}.spec-sheet{border:1px solid var(--line);background:#f2ece309;border-radius:20px;padding:30px;box-shadow:inset 0 1px #f2ece30f}.spec-sheet-head,.spec-row{justify-content:space-between;align-items:center;gap:20px;display:flex}.spec-sheet-head{color:var(--paper-muted);letter-spacing:.08em;text-transform:uppercase;padding-bottom:22px;font-family:IBM Plex Mono,monospace;font-size:10px}.spec-status{color:var(--sage);align-items:center;gap:8px;display:inline-flex}.spec-row{border-top:1px solid var(--line);min-height:62px;color:var(--paper-dim);font-size:13px}.spec-row strong{color:var(--paper);text-align:right;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:400}.faq-grid{grid-template-columns:.72fr 1.28fr;gap:clamp(40px,10vw,150px);display:grid}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-question{cursor:pointer;width:100%;min-height:72px;color:var(--paper);text-align:left;background:0 0;justify-content:space-between;align-items:center;padding:0;font-size:15px;font-weight:600;display:flex}.faq-plus{color:var(--coral-soft);transition:transform .22s var(--ease);font-family:IBM Plex Mono,monospace;font-size:20px;font-weight:400}.faq-item.is-open .faq-plus{transform:rotate(45deg)}.faq-answer{transition:grid-template-rows .3s var(--ease);grid-template-rows:0fr;display:grid}.faq-answer p{min-height:0;color:var(--paper-dim);font-size:14px;line-height:1.7;overflow:hidden}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-item.is-open .faq-answer p{padding:0 42px 24px 0}.site-footer{background:#0000001f;border-top:1px solid #f2ece31a}.footer-inner{width:min(calc(100% - 48px), var(--max-width));justify-content:space-between;align-items:flex-start;gap:30px;margin:0 auto;padding:38px 0 44px;display:flex}.footer-brand{color:var(--paper);font-family:Bricolage Grotesque,sans-serif;font-size:16px;font-weight:700}.footer-copy{color:var(--paper-dim);margin-top:8px;font-size:12px}.footer-meta{color:var(--paper-dim);text-transform:uppercase;flex-wrap:wrap;justify-content:flex-end;gap:22px;font-family:IBM Plex Mono,monospace;font-size:10px;display:flex}.footer-meta a:hover{color:var(--coral-soft)}@media (width<=980px){.hero-section{padding-top:44px}.hero-inner{grid-template-columns:1fr .9fr;gap:24px}.hero-copy h1{font-size:clamp(3.7rem,8vw,6.3rem)}.hero-visual{min-height:570px}.model-frame{inset-inline:0}.model-note{display:none}}@media (width<=760px){.page-width,.nav-inner,.footer-inner{width:min(calc(100% - 36px), var(--max-width))}.site-nav{height:68px}.nav-links{border:1px solid var(--line);background:#171a20f5;border-radius:14px;flex-direction:column;align-items:stretch;gap:0;padding:8px;display:none;position:absolute;top:67px;left:18px;right:18px;box-shadow:0 20px 50px #00000040}.nav-links.is-open{display:flex}.nav-links a{padding:14px}.nav-status{display:none}.nav-actions,.nav-brand{min-width:auto}.nav-menu-toggle{display:block}.hero-section{min-height:auto;padding:66px 0 72px;display:block}.hero-inner{display:block}.hero-copy{max-width:none}.hero-copy h1{max-width:540px;font-size:clamp(3.5rem,16vw,6rem)}.hero-lede{max-width:540px;font-size:15px}.hero-facts{gap:18px;margin-top:42px}.companion-console{margin-top:26px}.companion-console-head{display:block}.companion-console-status{margin-top:12px}.hero-visual{min-height:480px;margin-top:38px}.model-frame{border-radius:46% 46% 12px 12px;inset:0 0 10px}.model-frame-footer{font-size:8px;bottom:14px;left:16px;right:16px}.scroll-cue{width:min(calc(100% - 36px), var(--max-width));margin:30px auto 0;position:relative;bottom:auto;left:auto}.content-section{padding:92px 0}.process-grid,.model-section-grid,.faq-grid{grid-template-columns:1fr}.process-grid{margin-top:48px}.process-card,.process-card+.process-card{border-right:0;border-bottom:1px solid var(--line);min-height:auto;padding:24px 0 28px}.process-card:last-child{border-bottom:0}.process-index{margin-bottom:34px}.model-section-grid,.faq-grid{gap:50px}.spec-sheet{padding:20px}.spec-row{align-items:flex-start;padding:15px 0}.spec-row strong{max-width:48%}.footer-inner{flex-direction:column}.footer-meta{justify-content:flex-start;gap:12px 18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
