@font-face { font-family:'DM Sans'; font-style:normal; font-weight:100 1000; font-display:swap; src:url('/assets/fonts/dm-sans-latin.woff2') format('woff2'); }
@font-face { font-family:'DM Sans'; font-style:normal; font-weight:100 1000; font-display:swap; src:url('/assets/fonts/dm-sans-latin-ext.woff2') format('woff2'); unicode-range:U+0100-02FF,U+1E00-1EFF,U+2020,U+20A0-20AB; }
@font-face { font-family:'Manrope'; font-style:normal; font-weight:200 800; font-display:swap; src:url('/assets/fonts/manrope-latin.woff2') format('woff2'); }
@font-face { font-family:'Manrope'; font-style:normal; font-weight:200 800; font-display:swap; src:url('/assets/fonts/manrope-latin-ext.woff2') format('woff2'); unicode-range:U+0100-02FF,U+1E00-1EFF,U+2020,U+20A0-20AB; }
:root { color-scheme:dark; --bg:#130d15; --surface:#1e1520; --text:#f6eff3; --muted:#b7a4b2; --line:#e9bbd21a; --accent:#e6a9ca; --deep:#872052; font-family:'DM Sans',sans-serif; font-synthesis:none; background:var(--bg); color:var(--text); scroll-behavior:smooth; scroll-padding-top:32px; }
* { box-sizing:border-box; }
body { margin:0; background:radial-gradient(ellipse 55% 20% at 80% 12%,#8828581a,transparent 85%),var(--bg); }
body,button { font-family:'DM Sans',sans-serif; }
a { color:inherit; text-decoration:none; text-underline-offset:5px; }
button,a { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:2px solid var(--accent); outline-offset:6px; border-radius:4px; }
::selection { background:#9d3669; color:#fff; }
html { scrollbar-color:#755268 var(--bg); }
img { display:block; max-width:100%; height:auto; }
.wrap { max-width:1200px; width:calc(100% - 100px); margin-inline:auto; }
.icon { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.icon-library { position:absolute; width:0; height:0; overflow:hidden; }
.skip { position:fixed; top:10px; left:10px; z-index:10; transform:translateY(-200%); padding:12px; background:var(--surface); }
.skip:focus { transform:none; }
.header { height:100px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); gap:24px; }
.brand { display:inline-flex; align-items:center; gap:11px; font:750 22px 'Manrope',sans-serif; letter-spacing:-.025em; }
.brand-light { font-weight:500; }
.header nav { display:flex; gap:32px; font-size:14px; color:var(--muted); }
.header a:hover,.footer a:hover { color:var(--accent); }
.header-end { display:flex; gap:32px; align-items:center; }
.github-link { display:flex; align-items:center; gap:9px; font-size:14px; }
.github-link>span:last-child { color:var(--muted); }
.languages { display:flex; align-items:center; gap:9px; color:var(--muted); font-size:11px; letter-spacing:.08em; }
.languages a { padding:8px 3px; }
.languages [aria-current] { color:var(--text); border-bottom:1px solid var(--accent); }
.hero { display:grid; grid-template-columns:.94fr 1.18fr; align-items:center; gap:40px; min-height:665px; padding-block:65px 70px; }
.hero-copy { padding-left:8px; }
h1,h2,h3,p { margin:0; }
h1,h2,h3 { font-family:'Manrope',sans-serif; text-wrap:balance; }
h1 { font-size:clamp(52px,5.25vw,76px); font-weight:650; line-height:1.06; letter-spacing:-.04em; margin:30px 0 32px; }
h1>span,h1>em { display:block; }
h1>em { position:relative; width:fit-content; color:#e9b7d2; font-family:Georgia,'Times New Roman',serif; font-weight:400; font-size:1.22em; letter-spacing:-.04em; line-height:1.14; }
h1>em::after { content:''; position:absolute; bottom:-8px; left:0; right:0; height:8px; border-top:1px solid #ca83ab; border-bottom:1px solid #ca83ab70; border-radius:50%; transform:rotate(-1deg); }
.hero-description { font-size:16px; line-height:1.85; color:var(--muted); max-width:470px; }
.hero-description strong { font-weight:500; color:#eee0e9; }
.hero-actions { display:flex; align-items:center; gap:22px; margin-top:29px; flex-wrap:wrap; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:12px; border-radius:8px; padding:16px 20px; font-size:14px; font-weight:600; transition:background .2s,transform .2s; border:1px solid transparent; cursor:pointer; }
.button:hover { transform:translateY(-2px); }
.primary { background:#e6a9ca; color:#2b1523; border-color:#efbfd9; }
.primary:hover { background:#f0bedb; }
.primary .icon:last-child { width:17px; }
.text-link { display:inline-flex; gap:10px; align-items:center; font-size:12px; color:#d2becb; }
.text-link:hover { color:#fff; }
.availability { margin-top:14px; font-size:11px; color:var(--muted); max-width:410px; line-height:1.6; }
.local-note { display:flex; align-items:center; gap:15px; margin-top:29px; padding-top:22px; border-top:1px solid var(--line); max-width:420px; }
.local-note>.icon { width:32px; height:32px; color:#c792b1; }
.local-note p { color:var(--muted); font-size:11px; line-height:1.7; }
.local-note strong { display:block; color:#e0cad8; font-size:12px; font-weight:500; margin-bottom:3px; }
.local-note p>span { display:block; }
.local-note a { color:var(--accent); text-decoration:underline; }
.product-scene { position:relative; isolation:isolate; overflow:clip; margin:0; min-width:0; min-height:420px; display:flex; align-items:flex-start; padding-top:28px; }
.orbit { position:absolute; width:90%; aspect-ratio:1; left:50%; top:50%; transform:translate(-50%,-50%); border:1px solid #d397b112; border-radius:50%; pointer-events:none; z-index:-1; }
.orbit-two { width:115%; border-color:#d397b108; }
.app-capture { display:block; width:100%; transform:rotate(-2deg); border-radius:12px; box-shadow:0 22px 64px #0008; transition:transform .25s; }
.app-capture:hover { transform:rotate(0); }
.app-capture img { width:100%; border-radius:12px; }
.shortcut-note { position:absolute; display:flex; align-items:center; gap:7px; left:18px; bottom:75px; font:11px 'DM Sans',sans-serif; color:#cfadbf; transform:rotate(-2deg); }
kbd { font:600 11px 'DM Sans',sans-serif; background:#f9d8e50a; border:1px solid #edc0d62b; border-radius:4px; padding:5px 8px; box-shadow:0 2px 0 #0003; }
.shortcut-note>.icon { margin-left:8px; width:15px; }
.widget-capture { position:absolute; right:8px; bottom:51px; width:235px; max-width:50%; filter:drop-shadow(0 10px 15px #0007); }
.dictation-widget { position:relative; width:192px; aspect-ratio:128 / 34; border:1px solid #3a3a3a; border-radius:999px; background:#161616f0; color:#d24db8; flex-shrink:0; }
.widget-capture .dictation-widget { width:100%; }
.widget-logo { position:absolute; left:3.90625%; top:14.70588%; width:18.75%; aspect-ratio:1; }
.widget-logo img { width:100%; height:100%; }
.widget-bars { position:absolute; left:31.640625%; top:23.52941%; width:39.84375%; height:52.94118%; display:flex; justify-content:space-between; align-items:center; }
.widget-bars i { display:block; width:5.88235%; height:100%; background:currentColor; border-radius:999px; transform:scaleY(.64); }
.widget-bars i:nth-child(2n) { transform:scaleY(.82); }
.widget-bars i:nth-child(3n) { transform:scaleY(.94); }
.widget-bars i:first-child,.widget-bars i:last-child { transform:scaleY(.5); }
.widget-close { position:absolute; right:6.25%; top:23.52941%; width:14.0625%; height:52.94118%; display:grid; place-items:center; color:#b4b4b4; }
.widget-close .icon { width:100%; height:100%; stroke-width:1.8; }
.widget-spinner,.widget-check { position:absolute; left:44.53125%; top:23.52941%; width:14.0625%; height:52.94118%; display:none; }
.widget-spinner { fill:currentColor; }
.widget-check { fill:none; stroke:currentColor; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.dictation-widget[data-state="idle"] { width:45px; aspect-ratio:1; border:0; background:none; }
.dictation-widget[data-state="idle"] .widget-logo { inset:0; width:100%; }
.dictation-widget:not([data-state="recording"]) .widget-bars,
.dictation-widget[data-state="idle"] .widget-close,
.dictation-widget[data-state="success"] .widget-close { display:none; }
.dictation-widget[data-state="processing"] .widget-spinner,
.dictation-widget[data-state="success"] .widget-check { display:block; }
.desktop-stage[data-visible="true"] .widget-spinner { animation:widget-spin .9s linear infinite; }
.desktop-stage[data-visible="true"][data-phase="recording"] .widget-bars i { animation:dictation-level .8s ease-in-out infinite; }
.desktop-stage .widget-bars i:nth-child(2),.desktop-stage .widget-bars i:nth-child(8) { animation-delay:-.22s; }
.desktop-stage .widget-bars i:nth-child(3),.desktop-stage .widget-bars i:nth-child(7) { animation-delay:-.5s; }
.desktop-stage .widget-bars i:nth-child(4),.desktop-stage .widget-bars i:nth-child(6) { animation-delay:-.1s; }
.desktop-stage .widget-bars i:nth-child(5) { animation-delay:-.38s; }
@keyframes dictation-level { 0%,100% { transform:scaleY(.24); } 20% { transform:scaleY(.72); } 45% { transform:scaleY(.4); } 70% { transform:scaleY(1); } }
@keyframes widget-spin { to { transform:rotate(360deg); } }
.widget-caption { display:flex; justify-content:flex-end; gap:9px; margin-bottom:12px; font-size:11px; letter-spacing:.16em; color:#d7b0c7; }
.widget-caption>span { font-size:13px; }
.product-scene figcaption { position:absolute; bottom:8px; width:100%; text-align:center; color:#bda4b3; font-size:11px; line-height:1.7; }
.product-scene figcaption>span { color:#ad919f; }
.facts { display:flex; justify-content:space-between; gap:24px; border-block:1px solid var(--line); padding:29px 8px; }
.facts>span { display:flex; align-items:center; gap:12px; font-size:14px; color:#d6c5d1; }
.facts .icon { color:#c68cad; width:19px; height:19px; }
.desktop-showcase { padding-top:75px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:36px; margin-bottom:34px; }
h2 { font-size:clamp(27px,2.7vw,36px); font-weight:650; line-height:1.3; letter-spacing:-.035em; }
.section-heading>p { font-size:13px; color:var(--muted); line-height:1.8; flex-shrink:0; }
figure { margin:0; }
.desktop-stage { position:relative; isolation:isolate; height:520px; border:1px solid #d994bb2b; border-radius:14px; overflow:hidden; background:radial-gradient(ellipse at 88% 0%,#b7688f55,transparent 58%),linear-gradient(135deg,#302534,#664254 60%,#362333); box-shadow:0 22px 60px #0003; }
.desktop-stage::before { content:''; position:absolute; inset:-60% -15% auto 38%; height:125%; border:55px solid #e3a8c21c; border-radius:48%; transform:rotate(-28deg); z-index:-1; box-shadow:0 0 0 45px #e3a8c20b,0 0 0 90px #e3a8c207; }
.desktop-stage::after { content:''; position:absolute; left:32%; top:57%; width:100%; height:100%; border-radius:45%; background:linear-gradient(150deg,#b987a130,#322031); transform:rotate(-25deg); box-shadow:0 -1px 0 #e9bac327; z-index:-1; }
.desktop-shortcut { position:absolute; top:29px; left:23px; width:64px; display:grid; justify-items:center; gap:9px; font:11px 'Segoe UI',sans-serif; color:#f6e7f0; text-shadow:0 1px 4px #0009; }
.note-window { position:absolute; top:40px; left:13%; width:64%; max-width:740px; height:367px; border:1px solid #ecd1df30; border-radius:8px; background:#1e1920; box-shadow:0 18px 50px #170c2455; overflow:hidden; color:#e7dce3; font-family:'Segoe UI',sans-serif; }
.note-titlebar { display:flex; align-items:center; gap:12px; height:36px; padding-inline:14px; background:#ffffff03; font-size:11px; }
.note-mark .icon { width:15px; height:15px; color:#dba5c2; }
.window-controls { display:flex; align-items:center; gap:25px; margin-left:auto; font-size:13px; color:#b3a4ae; }
.window-controls .icon { width:12px; height:12px; }
.note-toolbar { display:flex; gap:22px; padding:8px 17px; border-block:1px solid #efd4e708; color:#cbb9c5; font-size:11px; }
.note-content { padding:25px 36px; }
.note-date { font-size:11px; color:#b59fad; }
.note-content h3 { font:500 21px 'Segoe UI',sans-serif; letter-spacing:-.02em; margin:12px 0 13px; }
.note-intro { font-size:12px; color:#c5b7c0; line-height:1.65; }
.dictated-text { color:#b29ba9; font-size:13px; margin-top:18px; line-height:1.7; min-height:45px; max-width:62ch; }
.dictated-text.inserted { color:#f3e7ef; animation:dictation-insert 1.2s ease-out; }
@keyframes dictation-insert { from { background:#d24db829; } to { background:transparent; } }
.note-divider { height:1px; background:#ddbdd011; margin:22px 0 14px; width:100%; }
.note-signature { font-size:11px; color:#bca1b1; }
.note-status { position:absolute; bottom:0; left:0; right:0; padding:7px 17px; color:#b8a6b1; font-size:11px; border-top:1px solid #eed2e70a; background:#ffffff02; }
.demo-widget { position:absolute; left:72%; top:57%; width:195px; display:flex; align-items:center; flex-direction:column; gap:14px; }
.demo-widget-status { min-height:16px; color:#f2dce8; text-shadow:0 1px 3px #241022; font:11px 'DM Sans',sans-serif; font-variant-numeric:tabular-nums; }
.demo-widget-picture { height:51px; width:192px; display:grid; place-items:center; filter:drop-shadow(0 8px 12px #24102450); }
.demo-keycap { display:flex; gap:6px; align-items:center; font-size:11px; color:#f1dce8; }
.demo-keycap kbd { background:#3e293e88; border-color:#e6bed13a; }
.desktop-stage[data-phase="recording"] .demo-keycap kbd { background:#986582; border-color:#e6bed180; }
.desktop-taskbar { position:absolute; inset:auto 0 0; height:44px; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border-top:1px solid #e8c9db22; background:#241a25e8; color:#dfcad7; font:11px 'Segoe UI',sans-serif; }
.taskbar-date { font-size:11px; }
.taskbar-apps { position:absolute; left:50%; transform:translateX(-50%); display:flex; align-items:center; gap:25px; }
.taskbar-apps>.icon { width:21px; height:21px; color:#d4aec5; }
.taskbar-apps>.icon:first-child { color:#e6a9ca; }
.taskbar-current { position:relative; padding:5px; background:#eabed610; border-radius:5px; }
.taskbar-current::after { content:''; position:absolute; bottom:0; left:12px; right:12px; height:2px; border-radius:2px; background:#e7aaca; }
.taskbar-tray { display:flex; flex-direction:column; gap:2px; text-align:right; font-size:11px; font-variant-numeric:tabular-nums; }
.desktop-figure>figcaption { display:flex; justify-content:space-between; margin-top:13px; color:var(--muted); font-size:11px; }
.demo-controls { display:grid; grid-template-columns:auto minmax(0,620px); align-items:start; justify-content:center; gap:22px; margin-top:24px; }
.demo-controls button { min-width:192px; }
.demo-explanation { min-height:64px; display:flex; align-items:center; }
.demo-controls .demo-narration { font-size:13px; line-height:1.65; color:#cfb8c7; }
.secondary { background:#241925; color:#efd4e4; border-color:#a96b902e; padding:12px 17px; font-size:12px; }
.secondary:hover { background:#352035; }
.button:disabled { opacity:.6; cursor:wait; transform:none; }
.demo-controls p { color:var(--muted); font-size:11px; }
.features { padding-block:82px 80px; }
.feature-grid { display:grid; grid-template-columns:repeat(2,1fr); column-gap:65px; row-gap:32px; }
.feature-grid article { position:relative; border-top:1px solid var(--line); padding:25px 0 0 40px; }
.feature-grid article>.icon { position:absolute; left:0; top:27px; color:#d89abb; }
.feature-grid h3 { font-size:17px; font-weight:600; margin-bottom:10px; letter-spacing:-.02em; }
.feature-grid p { color:var(--muted); font-size:13px; line-height:1.85; max-width:62ch; }
.ai-section { display:grid; grid-template-columns:.82fr 1.2fr; gap:65px; align-items:center; border-top:1px solid var(--line); padding-block:58px 66px; }
.ai-copy>p,.ai-consent p { color:var(--muted); font-size:13px; line-height:1.85; margin-top:16px; max-width:58ch; }
.ai-consent { margin-top:26px; padding-top:24px; border-top:1px solid var(--line); }
.ai-consent h3 { color:var(--accent); font-size:16px; font-weight:600; }
.ai-consent p { margin-top:10px; }
.ai-widget-preview { padding:12px 0 25px; text-align:center; }
.ai-widget { display:grid; justify-items:center; gap:10px; }
.ai-widget-buttons { display:flex; gap:8px; }
.ai-widget-buttons>span { display:inline-flex; gap:7px; align-items:center; padding:6px 12px; border:1px solid #3a3a3a; border-radius:999px; background:#161616; color:#f0f0f0; font:14px 'Segoe UI',sans-serif; box-shadow:0 4px 10px #0003; }
.ai-widget-buttons .icon { width:18px; height:18px; color:#d24db8; stroke-width:2; }
.ai-widget-preview figcaption { color:var(--muted); font-size:12px; margin-top:16px; }
.ai-actions { margin:0; }
.ai-actions>div { display:grid; grid-template-columns:85px 1fr; gap:20px; padding-block:17px; border-top:1px solid var(--line); }
.ai-actions dt { font-size:14px; font-weight:600; }
.ai-actions dd { margin:0; color:var(--muted); font-size:13px; line-height:1.75; }
.dictionary { display:grid; grid-template-columns:.82fr 1.2fr; gap:65px; align-items:center; border-block:1px solid var(--line); padding-block:66px; }
.dictionary-copy>p { margin-top:20px; color:var(--muted); font-size:13px; line-height:1.85; max-width:46ch; }
.correction-example { display:flex; align-items:center; gap:22px; margin-top:27px; color:#c897b3; font-family:Georgia,serif; font-size:27px; font-style:italic; }
.correction-example strong { font:600 23px 'Manrope',sans-serif; color:#f0c5dd; }
.correction-example>.icon { width:26px; }
.dictionary figure>a { display:block; border-radius:10px; overflow:hidden; box-shadow:0 16px 45px #0004; transform:rotate(1deg); }
.dictionary figure img { width:100%; }
.dictionary figcaption { margin-top:17px; text-align:center; font-size:11px; color:var(--muted); }
.history-note { display:flex; gap:14px; margin-top:32px; padding-top:24px; border-top:1px solid var(--line); }
.history-note>.icon { color:#c798b5; margin-top:2px; }
.history-note h3 { font-size:14px; font-weight:600; margin-bottom:8px; }
.history-note p { color:var(--muted); font-size:12px; line-height:1.8; }
.faq { display:grid; grid-template-columns:.82fr 1.2fr; gap:65px; padding-block:70px; }
.faq>h2 { font-size:29px; }
.faq details { border-bottom:1px solid var(--line); }
.faq details:first-child { border-top:1px solid var(--line); }
.faq summary { display:flex; justify-content:space-between; gap:15px; padding:21px 2px; font-size:14px; cursor:pointer; list-style:none; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary>span { color:var(--accent); font-size:18px; transition:transform .2s; }
.faq details[open] summary>span { transform:rotate(45deg); }
.faq details p { font-size:13px; line-height:1.85; color:var(--muted); padding:0 30px 22px 2px; }
.final-cta { text-align:center; border-top:1px solid var(--line); padding-block:58px 66px; }
.final-cta h2 { font-size:clamp(28px,3.1vw,42px); }
.final-cta>p { margin:17px 0 26px; color:var(--muted); font-size:14px; }
.download-note { display:block; margin-top:16px; font-size:11px; color:var(--muted); }
.footer { display:flex; justify-content:space-between; gap:30px; align-items:center; padding-block:29px 35px; border-top:1px solid var(--line); }
.footer .brand { font-size:17px; gap:9px; }
.footer p { font-size:11px; color:var(--muted); margin-top:10px; }
.footer>div:last-child { display:flex; gap:23px; flex-wrap:wrap; justify-content:flex-end; max-width:55%; font-size:11px; }
.footer>div:last-child>span { flex-basis:100%; text-align:right; color:var(--muted); font-size:11px; }
@media(max-width:1100px) {
  .wrap { width:calc(100% - 64px); }
  .hero { gap:28px; grid-template-columns:1fr 1.08fr; }
  .hero-actions { gap:17px; }
  .hero-description { font-size:14px; }
  .button { font-size:13px; padding:14px 17px; }
  .product-scene { min-height:350px; }
  .widget-capture { width:205px; bottom:40px; }
  .shortcut-note { bottom:70px; left:8px; }
  .facts { gap:18px; }
  .facts>span { font-size:12px; gap:9px; }
  .dictionary,.faq,.ai-section { gap:40px; }
  .demo-widget { left:73%; width:175px; }
}
@media(max-width:800px) {
  .wrap { width:calc(100% - 48px); }
  .header { height:82px; }
  .header nav { display:none; }
  .header-end { gap:22px; }
  .hero { grid-template-columns:1fr; text-align:center; min-height:0; padding-block:46px 38px; gap:35px; }
  .hero-copy { padding-left:0; }
  .platform-note,.hero-actions { justify-content:center; }
  h1 { font-size:66px; margin-top:25px; }
  h1>em { margin-inline:auto; }
  .hero-description,.availability { margin-inline:auto; }
  .hero-description { font-size:16px; }
  .local-note { margin-inline:auto; justify-content:center; text-align:left; }
  .product-scene { width:90%; max-width:620px; min-height:0; padding-top:15px; padding-bottom:115px; margin-inline:auto; }
  .widget-capture { bottom:43px; max-width:52%; }
  .shortcut-note { bottom:58px; }
  .facts { display:grid; grid-template-columns:1fr 1fr; justify-items:center; gap:20px 15px; padding-block:26px; }
  .desktop-showcase { padding-top:52px; }
  .section-heading { display:block; margin-bottom:26px; }
  .section-heading>p { margin-top:14px; }
  .section-heading>p br { display:none; }
  .desktop-stage { height:455px; }
  .desktop-shortcut { left:9px; width:45px; font-size:11px; }
  .desktop-shortcut img { width:29px; }
  .note-window { left:70px; top:29px; width:calc(100% - 93px); height:310px; }
  .note-content { padding:20px 26px; }
  .note-content h3 { font-size:18px; }
  .note-signature,.note-divider { display:none; }
  .demo-widget { left:auto; right:24px; top:auto; bottom:63px; width:190px; gap:5px; }
  .demo-keycap { position:absolute; right:210px; bottom:13px; }
  .demo-widget-status { font-size:11px; }
  .features { padding-block:55px; }
  .feature-grid { column-gap:35px; row-gap:26px; }
  .feature-grid article { padding-left:32px; }
  .feature-grid h3 { font-size:15px; }
  .dictionary { grid-template-columns:1fr; gap:35px; padding-block:44px; }
  .ai-section { grid-template-columns:1fr; gap:30px; padding-block:44px; }
  .ai-copy>p,.ai-consent p { max-width:65ch; }
  .dictionary-copy>p { max-width:65ch; }
  .history-note { max-width:70ch; }
  .faq { grid-template-columns:1fr; gap:23px; padding-block:48px; }
  .final-cta { padding-block:45px; }
}
@media(max-width:480px) {
  .wrap { width:calc(100% - 36px); }
  .header { gap:14px; height:74px; }
  .brand { font-size:19px; gap:9px; }
  .brand>img { width:32px; }
  .header-end { gap:17px; }
  .github-link>span { display:none; }
  .languages { gap:6px; }
  .hero { padding-top:35px; gap:27px; }
  h1 { font-size:clamp(46px,13.8vw,65px); }
  .hero-description { font-size:14px; }
  .hero-description br { display:none; }
  .hero-description>strong { display:block; margin-bottom:7px; }
  .hero-actions { flex-direction:column; gap:19px; }
  .availability { max-width:300px; font-size:11px; }
  .local-note { margin-top:23px; padding-top:20px; gap:12px; }
  .local-note p { font-size:11px; }
  .local-note strong { font-size:11px; }
  .product-scene { width:100%; padding-bottom:106px; }
  .app-capture { border-radius:7px; }
  .app-capture img { border-radius:7px; }
  .widget-capture { bottom:34px; width:175px; }
  .widget-caption { font-size:11px; margin-bottom:9px; }
  .shortcut-note { left:5px; gap:5px; bottom:48px; }
  .shortcut-note .icon { display:none; }
  kbd { font-size:11px; padding:4px 6px; }
  .product-scene figcaption { font-size:11px; bottom:0; }
  .product-scene figcaption>span { display:block; }
  .facts { justify-items:start; padding:23px 0; gap:17px 9px; }
  .facts>span { font-size:11px; gap:7px; }
  .facts .icon { width:16px; height:16px; }
  .desktop-stage { height:402px; border-radius:10px; }
  .desktop-shortcut { left:7px; top:24px; width:30px; }
  .desktop-shortcut img { width:24px; }
  .desktop-shortcut>span { display:none; }
  .note-window { left:44px; top:22px; width:calc(100% - 59px); height:260px; }
  .note-titlebar { padding-inline:9px; gap:8px; font-size:11px; height:30px; }
  .window-controls { gap:12px; font-size:11px; }
  .window-controls .icon { width:9px; }
  .note-toolbar { font-size:11px; gap:16px; padding:7px 12px; }
  .note-content { padding:16px 17px; }
  .note-date { font-size:11px; }
  .note-content h3 { font-size:16px; margin-block:11px; }
  .note-intro { font-size:11px; }
  .dictated-text { font-size:11px; margin-top:14px; line-height:1.7; }
  .note-status { font-size:11px; padding:6px 12px; }
  .demo-widget { right:16px; bottom:56px; width:155px; gap:5px; }
  .demo-widget-picture { width:154px; height:41px; }
  .demo-widget-picture .dictation-widget { width:154px; }
  .demo-widget-picture .dictation-widget[data-state="idle"] { width:36px; }
  .demo-keycap { right:173px; bottom:10px; }
  .demo-widget-status { font-size:11px; }
  .desktop-taskbar { height:36px; padding-inline:12px; }
  .taskbar-date { display:none; }
  .taskbar-apps { left:16px; transform:none; gap:20px; }
  .taskbar-apps>.icon { width:18px; height:18px; }
  .taskbar-current img { width:20px; }
  .taskbar-tray { margin-left:auto; font-size:11px; }
  .desktop-figure>figcaption { gap:10px; font-size:11px; }
  .demo-controls { grid-template-columns:1fr; gap:11px; margin-top:20px; }
  .demo-controls button { justify-self:center; }
  .demo-explanation { min-height:90px; align-items:flex-start; text-align:center; }
  .demo-controls p { font-size:11px; }
  .feature-grid { grid-template-columns:1fr; gap:23px; }
  .feature-grid h3 { font-size:16px; }
  .feature-grid p { font-size:12px; }
  .ai-widget-buttons { gap:6px; }
  .ai-widget-buttons>span { gap:6px; padding-inline:9px; font-size:13px; }
  .ai-widget-buttons .icon { width:16px; height:16px; }
  .dictionary-copy>p { font-size:12px; }
  .faq>h2 { font-size:27px; }
  .faq summary { font-size:13px; padding-block:18px; }
  .faq details p { font-size:12px; }
  .footer { align-items:flex-start; flex-direction:column; gap:24px; }
  .footer>div:last-child { max-width:100%; justify-content:flex-start; gap:21px; }
  .footer>div:last-child>span { text-align:left; }
}
@media(prefers-reduced-motion:reduce) {
  :root { scroll-behavior:auto; }
  *,*::before,*::after { transition:none !important; animation:none !important; }
}

/* Captions and availability remain readable outside the desktop illustration. */
.availability,.local-note p,.local-note strong,.product-scene figcaption,.dictionary figcaption,.desktop-figure>figcaption,.demo-controls p,.download-note,.footer p { font-size:12px; }
.widget-caption { font-size:11px; letter-spacing:.06em; }
.footer>div:last-child>span { font-size:11px; }
@media(max-width:480px) { .note-window { height:286px; } .desktop-stage { height:426px; } .product-scene { padding-bottom:126px; } .product-scene figcaption { bottom:0; } .widget-capture { bottom:53px; } .shortcut-note { bottom:65px; } .desktop-figure>figcaption { flex-direction:column; gap:4px; } }

.external { width:12px; height:12px; }
.footer a { display:inline-flex; align-items:center; gap:6px; }
.widget-caption .external { width:12px; height:12px; }
.window-controls .icon { width:12px; height:12px; }
@media(max-width:480px) { .github-link>.external { display:none; } }
