.air-page { --air-accent:#8be7d0; --air-ink:#f2f7fb; --air-muted:#b3c1cf; --air-line:#b0d7df28; color:var(--air-ink); background:radial-gradient(ellipse 70% 20% at 50% 0%,#154d4f45,transparent),#0e1520; }
.air-container { width:min(1240px,calc(100% - 64px)); margin-inline:auto; }
.air-page :is(h1,h2,h3,h4,p,figure) { margin:0; }
.air-page :is(a,summary,[tabindex]):focus-visible { outline:3px solid var(--air-accent); outline-offset:5px; }
.air-page a { text-underline-offset:5px; }
.air-page h2 { font-size:clamp(2rem,3.5vw,3rem); font-weight:800; letter-spacing:-.045em; line-height:1.16; }
.air-page h3 { font-size:1.3rem; font-weight:800; line-height:1.4; letter-spacing:-.025em; }
.air-page p { line-height:1.75; }
.air-page .air-eyebrow { display:block; font-size:.875rem; font-weight:700; letter-spacing:.09em; line-height:1.6; color:var(--air-accent); margin-bottom:18px; }
.air-dot { display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--air-accent); margin-right:9px; }
.air-divider { color:#628782; margin-inline:15px; }
.air-hero { padding-block:160px 64px; text-align:center; }
.air-hero h1 { font-size:clamp(2.75rem,5.7vw,5rem); line-height:1.06; font-weight:800; letter-spacing:-.055em; }
.air-hero h1 em { font-style:normal; color:var(--air-accent); }
.air-hero .air-lead { margin-top:28px; font-size:clamp(1.125rem,2vw,1.4rem); color:#e1eaf0; }
.air-hero .air-intro { max-width:830px; margin:14px auto 0; font-size:1.125rem; color:var(--air-muted); }
.air-actions { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:28px; margin-top:32px; }
.air-page .btn-primary { background:var(--air-accent); color:#0b2423; border:1px solid var(--air-accent); box-shadow:none; font-weight:800; border-radius:7px; }
.air-page .btn-primary:hover { background:#b3f5e4; transform:translateY(-1px); }
.air-text-link { font-size:1rem; font-weight:700; color:#d4e4ed; }
.air-text-link:hover { color:var(--air-accent); }
.air-hero-notes { display:flex; justify-content:center; flex-wrap:wrap; gap:12px 32px; color:#9eb6bc; font-size:.875rem; margin-top:32px; }
.air-hero-notes span::before { content:'✓'; color:var(--air-accent); margin-right:8px; }
.air-source { padding-top:24px; scroll-margin-top:100px; }
.air-section-top { display:grid; grid-template-columns:1.15fr 1fr; align-items:end; gap:64px; margin-bottom:32px; }
.air-section-top > p { font-size:1.125rem; color:var(--air-muted); max-width:510px; }
.air-screen { border:1px solid var(--air-line); border-radius:12px; overflow:hidden; background:#15212f; }
.air-primary-screen { box-shadow:0 28px 90px #0005; }
.air-screen-bar { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; padding:17px 24px; font-size:.875rem; color:#bed0d9; }
.air-screen-bar a { color:var(--air-accent); }
.air-screen img { width:100%; height:auto; display:block; }
.air-screen > a { display:block; }
.air-primary-screen figcaption { display:grid; grid-template-columns:1fr 1fr; }
.air-screen figcaption { padding:26px 30px; }
.air-primary-screen figcaption { padding:0; }
.air-primary-screen figcaption > div { padding:27px 30px; }
.air-primary-screen figcaption > div + div { border-left:1px solid var(--air-line); }
.air-screen figcaption .air-eyebrow { margin-bottom:9px; }
.air-screen figcaption strong { font-size:1.2rem; font-weight:800; }
.air-screen figcaption p { margin-top:10px; font-size:1rem; color:var(--air-muted); }
.air-page .air-caption { margin-top:16px; font-size:.875rem; color:#a7b7c5; }
.air-caption a { text-decoration:underline; }
.air-section { padding-block:96px; }
.air-process { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; list-style:none; padding:0; margin:40px 0 0; }
.air-process li { padding-top:22px; border-top:1px solid #8be7d05c; }
.air-step { display:block; font-size:.875rem; color:var(--air-accent); margin-bottom:20px; letter-spacing:.06em; }
.air-process p { color:var(--air-muted); font-size:1rem; margin-top:12px; }
.air-format-note { display:grid; grid-template-columns:230px 1fr; gap:24px; margin-top:36px; padding:24px 0; border-block:1px solid var(--air-line); font-size:1rem; }
.air-format-note p { color:var(--air-muted); }
.air-band { background:#14202c; border-block:1px solid var(--air-line); }
.air-case { display:grid; grid-template-columns:.85fr 1.25fr; background:#0e1722; border:1px solid var(--air-line); border-radius:12px; overflow:hidden; }
.air-case-brief { padding:38px; border-right:1px solid var(--air-line); display:flex; flex-direction:column; align-items:start; }
.air-case-brief h3 { font-size:clamp(1.7rem,2.5vw,2.25rem); letter-spacing:-.04em; line-height:1.25; }
.air-case-brief p { color:var(--air-muted); margin-top:24px; }
.air-case-label { display:block; color:#9aafbc; font-size:.875rem; margin-top:auto; padding-top:32px; }
.air-evidence-chain { list-style:none; margin:0; padding:8px 30px; }
.air-evidence-chain li { display:flex; gap:20px; padding:20px 0; }
.air-evidence-chain li + li { border-top:1px solid var(--air-line); }
.air-evidence-chain li > span { font-size:.875rem; color:var(--air-accent); padding-top:3px; }
.air-evidence-chain h4 { font-weight:800; font-size:1.125rem; }
.air-evidence-chain small { display:inline-block; font-size:.875rem; font-weight:400; color:#a7bfc6; margin-left:12px; }
.air-evidence-chain p { margin-top:6px; color:var(--air-muted); font-size:1rem; }
.air-case-result { grid-column:1/-1; border-top:1px solid #8be7d04a; padding:28px 38px; background:#18413c55; }
.air-case-result .air-eyebrow { margin-bottom:8px; }
.air-case-result p { font-size:1.25rem; max-width:970px; }
.air-case-result > span:last-child { display:block; font-size:.875rem; color:#a4c4c2; margin-top:12px; }
.air-workspace-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.air-output-row { display:flex; flex-wrap:wrap; gap:18px 28px; padding-block:24px; border-bottom:1px solid var(--air-line); font-size:.875rem; }
.air-output-row > span { color:#9aafbc; }
.air-output-row a { color:var(--air-accent); }
.air-faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:64px; }
.air-questions details { border-bottom:1px solid var(--air-line); }
.air-questions details:first-child { border-top:1px solid var(--air-line); }
.air-questions summary { padding:24px 4px; cursor:pointer; font-size:1.0625rem; font-weight:700; }
.air-questions details p { color:var(--air-muted); font-size:1rem; padding:0 4px 24px; }
.air-questions a { color:var(--air-accent); text-decoration:underline; }
.air-final { border-top:1px solid #8be7d056; padding-block:72px 96px; text-align:center; }
.air-final h2 { font-size:clamp(2.4rem,4.7vw,4rem); }
.air-final > p:not(.air-eyebrow) { max-width:650px; margin:24px auto 0; color:var(--air-muted); font-size:1.125rem; }
@media(max-width:900px) { .air-section-top { gap:32px; } .air-case { grid-template-columns:1fr 1.2fr; } .air-case-brief { padding:28px; } .air-faq { grid-template-columns:1fr; gap:32px; } .air-process { gap:24px; } }
@media(max-width:680px) {
 .air-container { width:calc(100% - 36px); }
 .air-hero { padding-block:126px 40px; } .air-hero h1 { font-size:clamp(2.5rem,8.7vw,3.65rem); }
 .air-page .air-eyebrow { font-size:.8125rem; letter-spacing:.06em; } .air-divider { margin-inline:7px; }
 .air-hero-notes { flex-direction:column; gap:8px; } .air-section { padding-block:60px; }
 .air-section-top,.air-process,.air-case,.air-workspace-grid,.air-primary-screen figcaption,.air-format-note { grid-template-columns:1fr; }
 .air-section-top { gap:20px; } .air-process { gap:32px; } .air-format-note { gap:12px; }
 .air-primary-screen figcaption > div + div { border-left:0; border-top:1px solid var(--air-line); }
 .air-screen figcaption,.air-primary-screen figcaption > div { padding:22px; } .air-primary-screen figcaption { padding:0; }
 .air-case-brief { border-right:0; border-bottom:1px solid var(--air-line); padding:26px; }
 .air-evidence-chain { padding-inline:24px; } .air-evidence-chain small { display:block; margin:5px 0 0; }
 .air-case-result { padding:26px; } .air-screen-bar { padding:14px 18px; }
 .air-actions { gap:22px; } .air-final { padding-block:55px 65px; }
}
@media(prefers-reduced-motion:reduce) { .air-page *, .air-page *::before, .air-page *::after { scroll-behavior:auto !important; transition:none !important; } }
.air-platform { border:1px solid var(--air-line); border-radius:12px; overflow:hidden; }
.air-platform-source { padding:32px 24px 0; text-align:center; background:linear-gradient(120deg,#19433c55,#14202c); }
.air-platform-source .air-eyebrow { margin-bottom:9px; }
.air-platform-source h3 { font-size:1.6rem; }
.air-platform-source p { color:var(--air-muted); margin-top:12px; font-size:1rem; }
.air-platform-connector { display:block; color:var(--air-accent); font-size:1.7rem; padding:16px 0; }
.air-platform-capabilities { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid var(--air-line); }
.air-platform-capabilities article { padding:30px; display:flex; flex-direction:column; align-items:start; }
.air-platform-capabilities article + article { border-left:1px solid var(--air-line); }
.air-platform-capabilities p { margin-top:14px; font-size:1rem; color:var(--air-muted); }
.air-platform-capabilities a { display:block; padding-top:24px; margin-top:auto; color:var(--air-accent); font-size:.875rem; }
.air-platform-handoff { padding:22px 30px; text-align:center; color:#c2d5db; font-size:1rem; line-height:1.7; background:#14202c; }
.air-workflow-section { padding-top:0; }
.air-portable { display:grid; grid-template-columns:1fr 1fr; gap:64px; border-bottom:1px solid var(--air-line); }
.air-portable p { color:var(--air-muted); font-size:1.0625rem; }
.air-portable p + p { margin-top:18px; }
.air-portable a { display:inline-block; margin-top:24px; color:var(--air-accent); }
@media(max-width:680px) { .air-platform-capabilities,.air-portable { grid-template-columns:1fr; } .air-platform-capabilities article + article { border-left:0; border-top:1px solid var(--air-line); } .air-portable { gap:24px; } .air-workflow-section { padding-top:0; } }
/* Product film: original app captures, with app-matched upload/search motion. */
.air-film-section { padding-block:24px 80px; scroll-margin-top:110px; }
.air-film { width:min(1480px,calc(100% - 48px)); margin:auto; border:1px solid #3a414e; border-radius:10px; overflow:hidden; background:#191923; box-shadow:0 30px 90px #0005; }
.air-film-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:14px 22px; background:#19212d; border-bottom:1px solid #343c49; font-size:.875rem; color:#c3cdda; }
.air-film-toolbar > div { display:flex; gap:8px; }
.air-film-toolbar button { padding:7px 12px; color:#c5d2e1; background:#242d3b; border:1px solid #3e4858; border-radius:5px; font-size:.875rem; cursor:pointer; }
.air-film-toolbar button:hover { color:white; background:#354455; }
.air-film-viewport { position:relative; aspect-ratio:1289/710; container-type:inline-size; overflow:hidden; background:#191923; font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
.air-film-scene { position:absolute; inset:0; }
.air-film-scene[hidden] { display:none; }
.air-film-scene > img { display:block; width:100%; height:100%; object-fit:contain; }
.air-film-progress { height:3px; background:#2b3541; }
.air-film-progress > span { display:block; height:100%; width:0; background:#72bffd; }
.air-film-caption { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:32px; padding:25px 28px; border-top:1px solid #333b48; background:#192330; }
.air-film-caption h3 { font-size:1.25rem; }
.air-film-caption p { font-size:1rem; color:#b7c7d7; }
.air-film-chapters { display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; }
.air-film-chapters button { display:flex; gap:10px; align-items:center; border:1px solid #415065; border-radius:5px; padding:10px 14px; color:#adbdcf; font-size:.875rem; background:#192533; cursor:pointer; }
.air-film-chapters button span { color:#8097b2; font-size:.8125rem; }
.air-film-chapters button[aria-pressed="true"] { border-color:#438fff; background:#29487b; color:#fff; }
.air-film-chapters button[aria-pressed="true"] span { color:#c5dcff; }
.air-film-cursor { position:absolute; z-index:5; width:1.5%; height:auto; filter:drop-shadow(0 2px 2px #0008); pointer-events:none; opacity:0; }
.film-empty-mask { position:absolute; left:4.6%; top:29.3%; right:0; bottom:0; background:#181823; }
.film-drop-overlay { position:absolute; left:4.6%; top:24.5%; right:.2%; bottom:.2%; background:rgba(59,130,246,.08); box-shadow:inset 0 0 0 2px rgba(59,130,246,.9); border-radius:6px; display:flex; align-items:flex-start; justify-content:center; }
.film-drop-overlay > span { margin-top:.6cqw; padding:.4cqw .8cqw; border-radius:999px; background:rgba(37,99,235,.95); color:white; font-weight:600; font-size:.85cqw; box-shadow:0 4px 14px #0004; }
.film-file-stack { position:absolute; z-index:4; width:24%; left:0; top:0; font-size:.85cqw; color:#e5e7eb; filter:drop-shadow(0 8px 12px #0008); }
.film-file-stack > div { display:flex; gap:.6cqw; align-items:center; padding:.7cqw .8cqw; background:#292c3a; border:1px solid #58657a; border-radius:.3cqw; margin-top:-.2cqw; white-space:nowrap; }
.film-file-stack b { color:#80a8ff; font-size:.6cqw; }
.film-file-stack > span { display:block; width:fit-content; margin-left:auto; margin-top:-.4cqw; background:#315de3; color:white; padding:.2cqw .5cqw; border-radius:1cqw; font-size:.6cqw; }
.film-file-status { position:absolute; display:flex; align-items:center; gap:.35cqw; width:10%; min-height:2.3%; padding:.15cqw .3cqw; background:#181823; color:#81a9ff; font-size:.6cqw; }
.film-file-status i { display:block; position:absolute; bottom:0; left:.5cqw; width:0; max-width:70%; height:2px; background:#3c7df0; }
.film-doc-selection { position:absolute; left:5.8%; right:1%; top:37.6%; height:4%; background:#3b82f61a; outline:1px solid #6096ff80; opacity:0; }
.film-search-input { position:absolute; left:36.6%; top:14.37%; width:28.9%; height:3.35%; display:flex; align-items:center; gap:.4cqw; padding:0 .55cqw; background:#25252f; color:#e4e4e7; font-size:.61cqw; border:1px solid #435375; border-radius:.3cqw; }
.film-type-caret { height:1cqw; width:1px; background:#a8bbd9; }
.film-search-results { position:absolute; left:36.6%; top:18.3%; width:28.9%; color:#e5e7eb; background:#1a1d29; border:1px solid #ffffff1f; border-radius:.4cqw; box-shadow:0 8px 24px #0006; overflow:hidden; }
.air-film .cf-search__list-header { display:flex; justify-content:space-between; padding:.55cqw .8cqw; font-size:.72cqw; color:#ffffff99; background:#ffffff08; border-bottom:1px solid #ffffff0f; }
.air-film .cf-result-group { border-bottom:1px solid #ffffff0f; }
.air-film .cf-result-group__header { display:flex; align-items:flex-start; gap:.6cqw; padding:.7cqw .8cqw; text-align:left; }
.air-film .cf-result-group__icon { color:#f15f66; font-size:1.1cqw; width:1.3cqw; }
.air-film .cf-result-group__title-block { flex:1; min-width:0; }
.air-film .cf-result-group__title { color:#fff; font-weight:600; font-size:.8cqw; line-height:1.3; }
.air-film .cf-result-group__summary { color:#ffffffb3; font-size:.72cqw; margin-top:.22cqw; line-height:1.4; }
.air-film .cf-result-group__meta { margin-top:.35cqw; font-size:.68cqw; color:#ffffff80; }
.air-film .cf-snippet { display:flex; gap:.65cqw; padding:.45cqw .8cqw .55cqw 2.7cqw; font-size:.75cqw; color:#ffffffbf; border-top:1px dashed #ffffff0a; }
.air-film .cf-snippet__meta { width:1.5cqw; flex-shrink:0; color:#ffffff66; font-size:.65cqw; }
.air-film .cf-snippet__text { flex:1; line-height:1.5; }
.air-film .cf-search__footer { padding:.5cqw .8cqw; font-size:.64cqw; color:#ffffff73; background:#ffffff05; border-top:1px solid #ffffff0d; }
.air-film:fullscreen { width:100%; height:100%; display:flex; flex-direction:column; border:0; border-radius:0; background:#0e1520; }
.air-film:fullscreen .air-film-viewport { flex:1; min-height:0; width:min(100%,calc((100vh - 165px)*1.75)); margin:auto; }
.air-film:fullscreen .air-film-caption { padding:16px 28px; }
.air-review-explainer { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.air-review-explainer article { border-top:1px solid var(--air-line); padding-top:26px; }
.air-review-explainer p { color:var(--air-muted); font-size:1rem; margin-top:12px; }
.air-review-delivery { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:30px; margin-top:32px; border:1px solid #8be7d050; background:#1a3b3550; border-radius:10px; }
.air-review-delivery p { max-width:750px; margin-top:10px; color:var(--air-muted); font-size:1rem; }
.air-review-delivery a { flex-shrink:0; color:var(--air-accent); }
@media(max-width:680px) { .air-film { width:calc(100% - 20px); } .air-film-section { padding-block:12px 56px; } .air-film-toolbar { padding:12px; } .air-film-toolbar button { padding:7px 9px; } .air-film-caption { grid-template-columns:1fr; gap:12px; padding:20px; } .air-film-caption h3 { font-size:1.125rem; } .air-film-chapters { gap:7px; } .air-film-chapters button { font-size:.8125rem; padding:9px; } .air-review-explainer { grid-template-columns:1fr; } .air-review-delivery { align-items:start; flex-direction:column; padding:24px; } .air-review-delivery a { flex-shrink:1; } .air-film:fullscreen .air-film-caption { display:block; } .air-film:fullscreen .air-film-caption p { display:none; } }
.air-film { scroll-margin-top:105px; }
/* Exact current screenshots; clip only Safari's 58px toolbar, preserving app pixels. */
.air-current-capture { position:relative; display:block; aspect-ratio:1289/710; overflow:hidden; }
.air-film-scene > .air-current-image, .air-current-capture > .air-current-image { position:absolute; left:0; top:-8.169%; display:block; width:100%; height:auto; max-width:none; }
.air-review-screen { margin-bottom:36px; }
.air-review-screen figcaption { padding:18px 24px; color:var(--air-muted); font-size:.9rem; }
/* Same floating progress structure and colors as UploadProgressPanel.vue. */
.film-upload-panel { position:absolute; bottom:2.8%; right:1.55%; width:27%; overflow:hidden; border-radius:1.1cqw; background:linear-gradient(180deg,rgba(22,28,40,.92),rgba(15,20,30,.95)); backdrop-filter:blur(18px); border:1px solid #ffffff12; box-shadow:0 20px 50px #0008; color:#e6ecf3; font-size:.8cqw; }
.film-upload-head { display:flex; align-items:center; justify-content:space-between; padding:.9cqw 1.1cqw; border-bottom:2px solid #438fff; background:#ffffff05; }
.film-upload-head span { color:#e6ecf399; font-size:.7cqw; }
.film-upload-body { padding:1.1cqw; }
.film-upload-body > b { font-size:.85cqw; }
.film-upload-body > p { color:#e6ecf399; font-size:.7cqw; margin:.35cqw 0 .8cqw; }
.film-progress-label { display:flex; justify-content:space-between; margin:.8cqw 0 .4cqw; }
.film-native-bar { background:#ffffff0f; height:.4cqw; border-radius:1cqw; overflow:hidden; }
.film-native-bar i { display:block; width:0; height:100%; background:linear-gradient(90deg,#3b82f6,#60a5fa); }
.film-processing i { background:linear-gradient(90deg,#8b5cf6,#a78bfa); }
.film-upload-chip { display:inline-block; color:#6ee7b7; background:#10b9811f; border:1px solid #10b98133; border-radius:1cqw; padding:.25cqw .5cqw; margin-top:.7cqw; font-size:.7cqw; }
