@font-face{font-family:'FK Grotesk Neue';src:url('/ai/assets/fonts/fk-grotesk-neue-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
/* The homepage's white canvas, fine navigation and offset film layout. */
.ai-home{--ink:#000;--muted:#717171;--home-gap:24px;--home-margin:16px;--gallery-height:clamp(290px,calc(100svh - 258px),560px);min-height:100svh;color:#000;background:#fff;font-family:'FK Grotesk Neue','Helvetica Neue','PingFang SC','Microsoft YaHei',sans-serif;font-weight:400}
.ai-home .wrap{width:calc(100% - var(--home-margin)*2);max-width:none}
.home-header{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:var(--home-gap);padding-top:10px;font-size:12px;line-height:1.4}
.home-brand{grid-column:1/3;display:inline-flex;align-items:center;gap:5px;width:fit-content;min-height:36px;letter-spacing:.025em;white-space:nowrap}
.home-brand svg{width:16px;height:16px}
.home-contact{grid-column:11/-1;justify-self:end;min-height:36px;padding:0;font-size:inherit;white-space:nowrap}
.home-contact span{margin-left:10px}
.home-intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--home-gap);align-items:end;padding-block:30px 24px}
.home-intro-copy{grid-column:3/11}
.home-intro h1{font-size:clamp(28px,2.5vw,38px);line-height:1.15;letter-spacing:-.04em}
.home-intro p{margin-top:14px;max-width:36em;color:var(--muted);font-size:14px;line-height:1.65}
.gallery-motion{grid-column:11/-1;display:inline-flex;align-items:center;justify-self:end;gap:9px;min-height:44px;padding:0;color:var(--muted);font-size:12px;white-space:nowrap}
.gallery-motion [data-motion-icon]{display:block;width:8px;height:10px;border-inline:2px solid currentColor}
.gallery-motion[aria-pressed=false] [data-motion-icon]{width:0;height:0;border:5px solid transparent;border-right:0;border-left:8px solid currentColor}
.gallery-motion:hover{color:#000}
.gallery-motion[hidden]{display:none}
.home-intro{position:relative}
.home-call-entry{position:absolute;right:0;bottom:-14px;z-index:2;display:flex;align-items:center;gap:12px;max-width:260px;min-height:44px;padding:0;color:#000;font-size:12px;line-height:1.5;text-align:left}
.home-call-entry>svg{width:24px;height:24px;flex:none}.home-call-entry br{display:none}
.home-call-caption{display:grid;min-width:0}
.home-call-caption>span{grid-area:1/1;align-self:center}
.home-call-caption-size{visibility:hidden;pointer-events:none}
.home-call-entry:hover .home-call-copy{text-decoration:underline;text-underline-offset:3px}
.home-call-glyph{transform-origin:12px 12px}
.home-call-wave{opacity:0;transform-origin:14px 10px}
.home-call-entry[data-cue=true] .home-call-glyph{animation:home-call-ring 5s ease-in-out infinite}
.home-call-entry[data-cue=true] .home-call-wave{animation:home-call-wave 5s ease-out infinite}
.home-call-entry[data-cue=true] .home-call-wave-outer{animation-delay:150ms}
@keyframes home-call-ring{0%,24%,100%{transform:rotate(0)}4%,12%,20%{transform:rotate(-10deg)}8%,16%{transform:rotate(8deg)}}
@keyframes home-call-wave{0%,4%,26%,100%{opacity:0;transform:scale(.8)}9%{opacity:.75;transform:scale(.95)}22%{opacity:0;transform:scale(1.12)}}
.home-call-entry:focus-visible,.home-call-dialog button:focus-visible{outline:1px solid #000;outline-offset:4px}
.home-call-dialog{position:fixed;inset:auto;margin:0;padding:16px 18px 18px;width:300px;max-width:none;overflow:auto;border:1px solid #dedede;border-radius:4px;background:#fff;color:#000;box-shadow:0 12px 40px #00000012;z-index:45}
.home-call-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.home-call-heading h2{font-size:16px;font-weight:400;line-height:1.4}
.home-call-heading button{display:grid;place-items:center;width:44px;height:44px;margin:-6px -8px -6px 0;padding:0}.home-call-heading button svg{width:17px;height:17px}
.home-call-start{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:46px;padding:10px 14px;background:#000;color:#fff;border-radius:2px;font-size:13px;font-variant-numeric:tabular-nums}.home-call-start>svg{width:18px;height:18px;flex:none}
.home-call-start[aria-pressed=true]{background:#f3f3f3;color:#a14033}.home-call-start[aria-pressed=true]>svg{transform:rotate(135deg)}
.home-call-status{margin-top:12px;font-size:12px;line-height:1.6;color:#717171;overflow-wrap:anywhere}.home-call-status:empty{display:none}.home-call-status.error{color:#ab302b}
.text-writeout-char{position:relative}
.text-writeout-char[data-phase=pending]{visibility:hidden}
.text-writeout-char[data-phase=scramble]{color:transparent}
.text-writeout-char[data-phase=scramble]::after{content:attr(data-glyph);position:absolute;left:50%;top:0;transform:translateX(-50%);color:var(--writeout-ink);pointer-events:none}
/* One staggered composition, like the homepage, with all three choices in view. */
.capability-entries{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:minmax(var(--gallery-height),auto);gap:0 var(--home-gap);align-items:start}
.capability-entry{position:relative;min-width:0;width:100%}
.entry-chat{grid-column:1/6;grid-row:1;max-width:calc((var(--gallery-height) - 72px)*1.77778)}
.entry-voice{grid-column:6/9;grid-row:1;align-self:end;max-width:calc(var(--gallery-height)*.65)}
.entry-video{grid-column:10/-1;grid-row:1;justify-self:end;margin-top:38px;max-width:calc((var(--gallery-height) - 104px)*.852459)}
.entry-video .entry-visual{aspect-ratio:832/976}
.entry-link{display:block;min-width:0}
.entry-visual{position:relative;overflow:hidden;isolation:isolate;aspect-ratio:16/9;border-radius:2px;background:#f2f2f2}
.entry-voice .entry-visual{aspect-ratio:4/3}
.entry-visual img,.entry-visual video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.entry-visual video{opacity:0;pointer-events:none}
.capability-entry[data-ready=true] .entry-visual video{opacity:1}
.capability-entry[data-state=error] .entry-visual video{opacity:0}
.entry-copy{display:grid;grid-template-columns:minmax(0,1fr) 18px;gap:4px 12px;align-items:baseline;padding-top:12px}
.entry-copy h2{grid-column:1;grid-row:1;min-width:0;font-size:15px;font-weight:400;letter-spacing:-.02em;line-height:1.45;text-wrap:wrap;overflow-wrap:anywhere}
.entry-copy p{grid-column:1/-1;grid-row:2;color:var(--muted);font-size:12px;line-height:1.65;overflow-wrap:anywhere}
.capability-arrow{grid-column:2;grid-row:1;justify-self:end;width:15px;height:15px}
.capability-arrow svg{display:block;width:100%;height:100%}
.entry-link:focus-visible{outline:1px solid #000;outline-offset:6px}
.entry-link:hover .entry-copy h2{text-decoration:underline;text-underline-offset:4px}
.entry-link:active{transform:none}
.media-retry{display:block;min-height:44px;margin-top:4px;padding:5px 0;color:#717171;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.media-retry[hidden]{display:none}
.home-footer{display:flex;align-items:center;gap:24px;padding-block:9px calc(9px + env(safe-area-inset-bottom));color:var(--muted);font-size:12px}
.home-footer a{display:inline-flex;align-items:center;gap:12px;min-height:44px}
.home-footer a:hover{color:#000}
.ai-home .contact-dialog{border-radius:8px}
.ai-home .contact-dialog .button{border-radius:3px}
.ai-home .companion-form{border-radius:10px}
@media(min-width:1800px){.ai-home{--home-gap:28px}}
@media(max-width:800px){
.ai-home{--home-margin:14px;--home-gap:14px}
.home-header{grid-template-columns:auto minmax(0,1fr) auto;gap:12px;padding-top:6px;align-items:center}
.home-brand{grid-column:1;grid-row:1;font-size:11px;min-height:44px}
.home-contact{grid-column:3;grid-row:1;font-size:11px;min-height:44px;color:var(--muted)}
.home-contact span{margin-left:4px}
.home-intro{grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;padding-block:22px 20px}
.home-intro-copy{display:contents}
.home-intro h1{grid-column:1;grid-row:1;font-size:26px}
.home-intro p{grid-column:1/-1;grid-row:2;margin:0;font-size:12px;max-width:none}
.gallery-motion{grid-column:2;grid-row:1;font-size:11px;min-height:32px}
.home-call-entry{bottom:-30px;max-width:calc(50% - 7px);gap:8px;font-size:11px}.home-call-entry>svg{width:22px;height:22px}.home-call-entry br{display:block}
.capability-entries{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;gap:24px 14px;align-items:start;max-width:max(260px,calc((100svh - 340px)*1.04))}
.capability-entry{width:100%;max-width:none}
.entry-chat{grid-column:1;grid-row:1}
.entry-chat .entry-visual{aspect-ratio:4/3}
.entry-voice{grid-column:2;grid-row:1/3;align-self:center;justify-self:stretch}
.entry-voice .entry-visual{aspect-ratio:4/5}
.entry-video{grid-column:1;grid-row:2;justify-self:stretch;margin-top:0}
.entry-video .entry-visual{aspect-ratio:832/976}
.entry-copy{gap:4px 8px;padding-top:10px}
.entry-copy h2{font-size:14px;line-height:1.4}
.entry-copy p{font-size:11.5px;line-height:1.5}
.capability-arrow{width:13px;height:13px}
.home-footer{padding-block:14px calc(12px + env(safe-area-inset-bottom))}
.home-footer a{min-height:36px}
}
@media(max-width:800px) and (max-height:740px){
.home-intro{padding-block:12px 14px;row-gap:6px}
.home-intro h1{font-size:24px}
.gallery-motion{min-height:28px}
.capability-entries{row-gap:16px;max-width:max(260px,calc((100svh - 320px)*1.16 + 14px))}
.entry-chat .entry-visual{aspect-ratio:16/9}
.entry-copy{padding-top:8px}
.entry-copy p{font-size:11px}
.home-footer{padding-block:6px calc(8px + env(safe-area-inset-bottom))}
.home-footer a{min-height:32px}
}
@media(min-width:801px) and (max-height:680px){
.ai-home{--gallery-height:clamp(260px,calc(100svh - 218px),460px)}
.home-intro{padding-block:18px}
.home-intro h1{font-size:28px}
.home-intro p{margin-top:8px;font-size:12px}
.entry-video{margin-top:24px}
}
@media(prefers-reduced-motion:reduce){.ai-home a,.ai-home button{transition:none}.home-call-entry .home-call-glyph,.home-call-entry .home-call-wave{animation:none!important}}
