/* Readable secondary labels, without changing the paper-and-ink palette. */
.hw-composer-f[data-typed=""],.home-answer-block > small,.decision-contexts button span { color:var(--ink-3); }
.decision-context-caption > span:last-child { opacity:1; }
.decision-scene .decision-object { opacity:1; }
.flow-wrap:focus-visible { outline:2px solid var(--amber-ink); outline-offset:4px; }
/* Reserve the exact demo frame before its scripts arrive on a slow connection. */
.home-page [data-hero-window] { min-height:472px; }
.home-page [data-hero-window]:empty { border:1px solid var(--rule); border-radius:5px; background:var(--sheet); }
@media(max-width:680px) { .home-page [data-hero-window] { min-height:502px; } }
.site-utility-links { padding-block:12px; border-top:1px solid var(--rule); }
.site-utility-links nav { display:flex; flex-wrap:wrap; gap:8px 24px; margin:0; }
.site-utility-links a { display:inline-flex; align-items:center; min-height:44px; color:var(--ink-2); font:12px/1.6 var(--font-sans); text-decoration:none; }
.site-utility-links a:hover { text-decoration:underline; text-underline-offset:4px; }
.utility-main { padding:calc(var(--nav-h) + 55px) 0 55px; }
.utility-main > .shell { max-width:1040px; }
.utility-main h1 { font:400 clamp(34px,4vw,48px)/1.08 var(--font-display); letter-spacing:-.025em; margin:20px 0; }
.utility-main h1 em { font-style:normal; color:var(--amber-ink); }
.utility-main .utility-lede { color:var(--ink-2); font:15px/1.8 var(--font-sans); max-width:50ch; }
.contact-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:60px; align-items:center; }
.contact-card { background:var(--sheet); border:1px solid var(--rule); border-radius:4px; padding:30px; }
.contact-card h2 { font:400 28px/1.2 var(--font-display); margin:0 0 18px; }
.contact-card p,.utility-document p,.utility-document li { color:var(--ink-2); font:14px/1.8 var(--font-sans); }
.contact-card .button { margin:10px 0; }
.contact-address { display:block; color:var(--ink); font:12px/1.8 var(--font-mono); overflow-wrap:anywhere; margin-top:15px; }
.contact-prompts { margin:22px 0 0; padding:0; list-style:none; counter-reset:prompt; }
.contact-prompts li { display:flex; align-items:baseline; gap:12px; padding:10px 0; border-bottom:1px solid var(--rule); font:13px/1.8 var(--font-sans); color:var(--ink-2); counter-increment:prompt; }
.contact-prompts li::before { content:'0' counter(prompt); font:10px/1.5 var(--font-mono); color:var(--amber-ink); }
.utility-document { max-width:720px; }
.utility-document h2 { font:400 26px/1.3 var(--font-display); margin:32px 0 12px; }
.utility-document dl { margin:0; }
.utility-document dl > div { display:grid; grid-template-columns:180px 1fr; gap:20px; border-bottom:1px solid var(--rule); padding:12px 0; font:13px/1.7 var(--font-sans); }
.utility-document dt { color:var(--ink-3); }.utility-document dd { margin:0; color:var(--ink); overflow-wrap:anywhere; }
.utility-document a { color:var(--amber-ink); text-underline-offset:4px; }
.legal-draft { padding:14px 18px; border:1px solid var(--rule); background:var(--paper-2); color:var(--ink-2); font:13px/1.7 var(--font-sans); margin:24px 0; }
.utility-main :is(a,button):focus-visible,.site-utility-links a:focus-visible { outline:2px solid var(--amber-ink); outline-offset:4px; }
@media(max-width:680px) {
 .utility-main { padding:calc(var(--nav-h) + 30px) 0 35px; }
 .contact-grid { grid-template-columns:1fr; gap:25px; }
 .contact-card { padding:22px; }
 .utility-document dl > div { grid-template-columns:1fr; gap:4px; }
 .site-utility-links nav { gap:4px 18px; }
}
